Access交流中心

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

有重复记录时提示,代码怎样写

Lee  发表于:2016-04-27 10:43:10  
复制

表中有如下栏目:

日期  姓名   产品编号  工序  数量

数据采用EXCEL导入或在窗体中输入,为防止数据重复输入,当输入数据发现表中已有相同记录(即以上表头五项重复)时弹出提示“已有相同记录,是否继续输入”,请问代码怎样写,在哪里写?

 

Top
朱先生 发表于:2016-04-27 12:43:08

在导入时就判断5个字段重复待高手解答

在窗体中输入时可以做到

问题只解决一半恕不给答案

判断连续5个字段是否重复,与在N个字段中判断任意5个字段是否重复重复,容易得多了

待高手一并解决吧

 



朱先生 发表于:2016-04-29 10:38:10
        

Lee 发表于:2016-05-05 13:20:03
唉,又是一条无解题。

zhaoyoulong 发表于:2016-05-05 14:06:59

dim str as string 

str="select  姓名 from 表 where nz([日期]) & nz([姓名])  & nz([产品编号])  & nz([工序]) & nz([数量])='"nz(me.日期)  & nz(me.姓名 )  & nz(me.产品编号) &  nz(me.工序) &  nz(me.数量) & "'"



if  CurrentDb.OpenRecordset(Str).RecordCount>=1 then

msgbox "重复“

end if



Lee 发表于:2016-05-11 16:48:05
不行啊,是在窗体更新前事件中写代码吗?附上SAMPLE数据麻烦测试一下。点击下载此附件

朱先生 发表于:2016-05-13 21:53:44

测试了似乎是不行

代码应在保存记录中写

你用的是绑定输入,即使发现重复记录,记录已写入了

要改成非绑定输入,姓名、产品编号、工序最好用组合框比较方便

添加记录按钮取消,用追加记录

提示重复记录代码的关键字提示:IF 、DLOOKUP、累加器



zhaoyoulong 发表于:2016-06-30 13:58:58
Lee 发表于:2016-08-11 14:27:46

回复zhaoyoulong,测试过了,只在编辑窗体逐个输入记录时有效,以数据表形式打开窗体、在数据末尾添加记录形式增加以记录就无效了,另外导入数据方式输入也无效。不过还是谢谢你。



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