Access交流中心

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

用DMax 编号时,当没有记录时,无法进行编号

施巍巍  发表于:2015-06-03 15:57:37  
复制

在学习经销系统时,对于新增员工那里,

MaxID = DMax("[员工ID]", "员工表")
currentID = MaxID + 1
strSQL = "select * from 员工表"
Set rst = CurrentDb.OpenRecordset(strSQL, dbOpenDynaset)
rst.AddNew

在有记录的时候,能正常进行新增操作,但是我把数据全部删除了,结果再进行新增时,就跳出“94”“无效使用NULL”错误,根据查询是由于没有数据时DMax返回了空值造成的。

请问怎么判断是否DMax返回的是空值,如果为空,则MaxID为0

 

Top
施巍巍 发表于:2015-06-03 16:07:03

在搜索论坛相关信息后,自己已经解决!

DCount先判断下,就好了

If DCount("[单位ID]", "来文单位表") = 0 Then

MaxID = 0
Else
MaxID = DMax("[单位ID]", "来文单位表")

End If



缪炜 发表于:2015-06-04 08:25:53
MaxID =nz( DMax("[员工ID]", "员工表"),"")


施巍巍 发表于:2015-06-04 14:52:29

谢谢,少了好多代码呢,不过我觉得""用0代替好点吧,MaxID =nz( DMax("[员工ID]", "员工表"),0)

建议那个教程里的代码更新一下,像我们新手碰到后会迷茫很久。



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