设为首页收藏本站Access中国

Office中国论坛/Access中国论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

返回列表 发新帖
查看: 2263|回复: 7
打印 上一主题 下一主题

[其它] 各位,请教一个生成编号的问题。

[复制链接]
跳转到指定楼层
1#
发表于 2005-1-4 09:00:00 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
我想再请教一个关于自动生成编号的问题。

比如我想建一个VIP管理的数据库。给每一个客户以编号。

可是我要先在数据库中生成若干个有排列的编号,格式如MS8600001~MS8609999

各位高手,能不能帮我完成这样的一个功能:

当打开客户列表窗体,在窗体的底端放置一个按钮:生成编号

点击后弹出对话框,要求生成多少个客户编号(生成的新编号紧接上一号码)

如已有的客户编号已至MS8600553

在对话框中输入30,生成的编号为:MS8600554~MS8600583

在此先谢过了。待我学成一定不忘来此发表有价值的文章。[em03][em03][em03]

[此贴子已经被作者于2005-1-4 1:00:59编辑过]

分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享分享 分享淘帖 订阅订阅
2#
发表于 2005-1-4 17:09:00 | 只看该作者
用For循環首先要取得起始編號,你的為8600553(我們不要前面字符,且建議你將此數據字單獨存在一個表中),然後:dim Num1 As Long

NUm1=8600553  '假設已取得此號

dim i as integer

dim VipNo as string

for i=1 to 30

      VipNo="MS" & num1+1

      '在這是加入你要處理的程序,如將其編號加入到數據庫

next i

3#
发表于 2005-1-4 19:46:00 | 只看该作者
顺便补充, 可这样转换成数值类型

NUm1=Clng(mid$("MS8600553",3))

或者NUm1=Val(mid$("MS8600553",3))



[此贴子已经被作者于2005-1-4 11:47:50编辑过]

4#
发表于 2005-1-4 20:12:00 | 只看该作者
请问goodidea,mid$怎么在帮助中找不到,而在表达式生成器中是有的,它的用法是怎样的?我的office已经完全安装了呀。
5#
发表于 2005-1-4 23:07:00 | 只看该作者
参见MID函数,Mid 函数返回 Variant (String),其中包含字符串中指定数量的字符。语法Mid(string, start[, length])Mid 函数的语法具有下面的命名参数:部分说明string必要参数。字符串表达式,从中返回字符。如果 string 包含 Null,将返回 Nullstart必要参数。为 Long。string 中被取出部分的字符位置。如果 start 超过 string 的字符数,Mid 返回零长度字符串 ("")length可选参数;为 Variant (Long)。要返回的字符数如果省略或 length 超过文本的字符数(包括 start 处的字符),将返回字符串中从 start 到尾端的所有字符。





说明欲知 string 的字符数,可用 Len 函数。注意 MidB 函数作用于字符串中包含的字节数据,如同在双字节字符集(DBCS)语言中一样。因此其参数指定的是字节数,而不是字符数。对于使用 MidB的示例代码,请参阅示例主题中的第二个示例。
6#
 楼主| 发表于 2005-1-5 10:52:00 | 只看该作者
以下是引用zyp在2005-1-4 9:09:10的发言:



用For循環

首先要取得起始編號,你的為8600553(我們不要前面字符,且建議你將此數據字單獨存在一個表中),然後:

dim Num1 As Long

NUm1=8600553  '假設已取得此號

dim i as integer

dim VipNo as string

for i=1 to 30

      VipNo="MS" & num1+1

      '在這是加入你要處理的程序,如將其編號加入到數據庫

next i

可是我还是要问问,怎么才能把这些生成的编号逐条插入到表中去呢????

我在VBA里用INSERT INTO不行呀~~~

能给我写一个完整的代码或是做成文件给我吗~~现在特急~~~~~

谢谢谢谢谢谢谢谢谢谢[em11][em11][em11]
7#
 楼主| 发表于 2005-1-5 11:13:00 | 只看该作者
还有就是如何取得表中的最后一个编号呢?

大哥再帮帮忙~~~~
8#
发表于 2005-1-5 20:51:00 | 只看该作者
若编号固定都为:MS86加5位数的顺序码的话,可以将该字段设为数字型的,同时将其格式设为“:"ms86"00000,这样编程简单点,同时文件占用空间也小。还有就是如何取得表中的最后一个编号呢?若输入顺序肯定是由小到大的话可用dlast函数来做,否则可用dmax函数来完成。追加记录不会做的话,可参看追加查询的sql语言。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|站长邮箱|小黑屋|手机版|Office中国/Access中国 ( 粤ICP备10043721号-1 )  

GMT+8, 2024-5-16 17:32 , Processed in 0.086586 second(s), 31 queries .

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表