你部门缩写都是相同数量的字符的吗?如果不是
idx = CInt(max.Substring(13,3)) + 1 '获得最大编号的后三位顺序号,并加1
请改成
idx = CInt(max.Substring((dr("部门缩写") & "-FW-" & bh & "-").length,3)) + 1 '获得最大编号的后三位顺序号,并加1
多人同时录入的时候,有可能重复;但一个人录入的时候如果重复,那不可能。
你在保存之前beforeSaveDataRow、DataColChanging事件试试判断重复
http://www.foxtable.com/webhelp/scr/2481.htm