设为首页收藏本站Access中国

Office中国论坛/Access中国论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

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

[模块/函数] [原创源码分享]只有几行代码的自定义自动编号函数

[复制链接]
跳转到指定楼层
1#
发表于 2008-6-10 16:43:27 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
头几天做东西的时候想到的一个思路,现在空下来完善一下发上来和大家分享
  1. '========================================================================================
  2. '-函 数 名: AutoNumber
  3. '-函数用途: 设置自定义自动编号
  4. '-参数说明: 参数1:Prefixal----编号前缀
  5. '- 参数2:Digit----编号位数
  6. '- 参数3:FieldName----自动编号所在字段名
  7. '- 参数4:TableName----自动编号所在表名
  8. '-返回参数: 调用成功返回将要向新记录中添加的最大编号,调用失败返回空字符串""
  9. '-调用方法: 在窗体的Current(当前)事件中调用
  10. '-调用示例: Me.自动编号.DefautValue = AutoNumber("[审]",7,"自动编号","审核表")
  11. '-使用注意: 表中的自动编号字段数据类型要设成文本型
  12. '-作 者: 红尘如烟
  13. '-
  14. '=============================================================================================
  15. Function AutoNumber(Prefixal As String, Digit As Integer, FieldName As String, TableName As String) As String
  16. On Error GoTo AutoNumber_Err

  17. Dim strMaxID As Long
  18. Dim strNumberFormat As String
  19. Dim i As Integer

  20. strMaxID = Nz(DMax("Right( " & FieldName & "," & Digit & ")", TableName)) + 1
  21. For i = 1 To Digit
  22. strNumberFormat = strNumberFormat & "0"
  23. Next
  24. AutoNumber = """" & Prefixal & Format(strMaxID, strNumberFormat) & """"

  25. AutoNumber_Exit:
  26. Exit Function

  27. AutoNumber_Err:
  28. AutoNumber = ""
  29. MsgBox Err.Number & vbCrLf & Err.Description, vbCritical, "自动编号出错"
  30. Resume AutoNumber_Exit
  31. End Function
复制代码
游客,如果您要查看本帖隐藏内容请回复

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x

评分

参与人数 1经验 +5 收起 理由
tanhong + 5 原创内容

查看全部评分

分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏4 分享分享 分享淘帖 订阅订阅
2#
发表于 2008-6-10 17:17:16 | 只看该作者
很实用的功能 [:12]
3#
发表于 2008-6-10 17:27:19 | 只看该作者
支持 [:24]

点击这里给我发消息

4#
发表于 2008-6-10 17:59:42 | 只看该作者
不能不支持一下!
5#
 楼主| 发表于 2008-6-10 18:13:03 | 只看该作者
奇怪,我在1楼的代码是直接复制过来的,最后错误处理那儿应该是AutoNumber=""的,怎么只显示Aut,改都改不了

6#
发表于 2008-6-10 19:06:40 | 只看该作者
学习
[:50] [:50] [:50]
7#
发表于 2008-6-10 21:23:54 | 只看该作者
[:34] [:34] [:34]

点击这里给我发消息

8#
发表于 2008-6-10 22:46:46 | 只看该作者
学习!谢谢![:50]

点击这里给我发消息

9#
发表于 2008-6-11 00:55:02 | 只看该作者
复制到写字板,再复制过来是否可以?
10#
 楼主| 发表于 2008-6-11 01:32:14 | 只看该作者
站长老大,还是不行啊,我手动改过后不行,复制到记事本和写字板后再复制过来全都不行,是被屏蔽掉了,还是怎么回事,太奇怪了
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2024-4-29 07:31 , Processed in 0.096931 second(s), 39 queries .

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

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