Access交流中心

北京 | 上海 | 天津 | 重庆 | 广州 | 深圳 | 珠海 | 汕头 | 佛山 | 中山 | 东莞 | 南京 | 苏州 | 无锡 | 常州 | 南通 | 扬州 | 徐州 | 杭州 | 温州 | 宁波 | 台州 | 福州 | 厦门 | 泉州 | 龙岩 | 合肥 | 芜湖 | 成都 | 遂宁 | 长沙 | 株洲 | 湘潭 | 武汉 | 南昌 | 济南 | 青岛 | 烟台 | 潍坊 | 淄博 | 济宁 | 太原 | 郑州 | 石家庄 | 保定 | 唐山 | 西安 | 大连 | 沈阳 | 长春 | 昆明 | 兰州 | 哈尔滨 | 佳木斯 | 南宁 | 桂林 | 海口 | 贵阳 | 西宁 | 乌鲁木齐 | 包头 |

菜鸟求助:分类自动递增编号的代码

凉拌黄瓜  发表于:2010-05-27 23:45:55  
复制

由于平台本身的自动编号在删除记录后要跳号,所以在应用上不太适合。我在实际操作中经常会遇到录入当前信息时出错需要删除的情况(Undo也不行,自动编号还是会跳过当前编号)

我的窗体样式的是个人申请表样式,也就是一次输入是一条记录共5个字段,输入完后进入下一页再添加第二条记录,报名序号需要根据不同值添加不同前缀且按照0001 0002  0003 0004 ....的顺序,假设“文本框1”默认已输入值为“东区”,那么编号就是D0001 D0002....默认输入“西区”则为X0001 X0002...

问题是,如何根据文本框1设定的值来让报名序号自动排序~

 

在本站找到了实例[模块/函数] 自定义编号10种方法汇总

http://www.accessoft.com/article-show.asp?id=3066

其中的G-按类别分别自动编号比较适合我想达到的效果了~不知该如何修改才能为我所用啊,另外这段代码添加在什么地方(窗体?文本框?按钮?)比较合适。

 

 

代码:

Private Sub Form_AfterUpdate()
  Me.组合4.SetFocus
 DoCmd.GoToRecord , , acNewRec

End Sub

 

Private Sub Form_Load()
DoCmd.GoToRecord , , acNewRec
Me.组合4.SetFocus

End Sub

 

Private Sub 组合4_AfterUpdate()
 
  Me.组合4.SetFocus

  Me.类别 = Me.组合4.Column(1)
 
  Me.编号 = Format(Date, "yyyy") & Me.组合4 & Format(Nz(Right(DMax("[编号]", "G-编号", "left([编号],5)='" & Format(Date, "yyyy") & "' & '" & Me.组合4 & "'"), 3)) + 1, "000")

End Sub

 

 

Top
凉拌黄瓜 发表于:2010-05-27 23:53:09

另外找到了这个,哪个更适合一些呢?

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

如果我想实现不同类型的自动编号,我应该怎么设置代码呢?
如:第1号、第2号、...........、第198号..................
或:CN0001-A、CN0002-B、CN0003-B、.........、CN0004-A、CN1998-B……
是在默认值里输入代码呢,还是在什么地方,请指教,谢谢!

回答:
 

这些要求都不需要在“表”的字段属性中完成,一般都是在界面编程中解决的。

用 dcount() 或者 dmax() 函数取值后用字符串组合的方法得到编号

Private Sub Field1_Enter()
    If IsNull(Field1.value) Then
        Field1.value = "CN" & Format(CLng(DMax("mid(field1,3,4)", "table1") + 1), "0000") & "-A"
    End If
End Sub



竹笛 发表于:2010-05-28 11:37:20
参考: 断号重续自动编号函数 http://www.accessoft.com/downshow.asp?ID=40

凉拌黄瓜 发表于:2010-05-28 12:20:28

谢谢竹笛大师指点~

由于本人资质愚笨~参不透~

特上传样本一个,有请各路大神帮忙完善~谢谢

点击下载此附件

wang decheng 发表于:2010-05-29 15:10:29

点击下载此附件

东区为“E”

西区为“W”



凉拌黄瓜 发表于:2010-05-30 10:22:47

谢谢王德成,太强悍了!!!



总记录:5篇  页次:1/1 9 1 :