access 2007 在窗体中同时插入多条记录问题

我要一次插入五条记录,用了下面的代码,会弹出5次,是否插入1条记录的提示,怎样才能使它只弹出一次提示,代码如下stemp1="insertinto收费表(学员编号,学员姓... 我要一次插入五条记录,用了下面的代码,会弹出5次,是否插入1条记录的提示,怎样才能使它只弹出一次提示,代码如下

stemp1 = "insert into 收费表(学员编号,学员姓名,科目,上课形式,教师编号,教师姓名,单价,课时,赠送课时,应收金额,折扣,实收金额,日期) values('" & Me![学员编号] & "','" & Me![学员姓名] & "','" & Me![科目1] & "','" & Me![上课形式1] & "','" & Me![教师编号1] & "','" & Me![教师姓名1] & "','" & Me![单价1] & "','" & Me![课时1] & "','" & Me![赠送课时1] & "','" & Me![应收金额1] & "','" & Me![折扣1] & "','" & Me![实收金额1] & "','" & Me![日期] & "')"
stemp2 = "insert into 收费表(学员编号,学员姓名,科目,上课形式,教师编号,教师姓名,单价,课时,赠送课时,应收金额,折扣,实收金额,日期) values('" & Me![学员编号] & "','" & Me![学员姓名] & "','" & Me![科目2] & "','" & Me![上课形式2] & "','" & Me![教师编号2] & "','" & Me![教师姓名2] & "','" & Me![单价2] & "','" & Me![课时2] & "','" & Me![赠送课时2] & "','" & Me![应收金额2] & "','" & Me![折扣2] & "','" & Me![实收金额2] & "','" & Me![日期] & "')"
stemp3 = "insert into 收费表(学员编号,学员姓名,科目,上课形式,教师编号,教师姓名,单价,课时,赠送课时,应收金额,折扣,实收金额,日期) values('" & Me![学员编号] & "','" & Me![学员姓名] & "','" & Me![科目3] & "','" & Me![上课形式3] & "','" & Me![教师编号3] & "','" & Me![教师姓名3] & "','" & Me![单价3] & "','" & Me![课时3] & "','" & Me![赠送课时3] & "','" & Me![应收金额3] & "','" & Me![折扣3] & "','" & Me![实收金额3] & "','" & Me![日期] & "')"
stemp4 = "insert into 收费表(学员编号,学员姓名,科目,上课形式,教师编号,教师姓名,单价,课时,赠送课时,应收金额,折扣,实收金额,日期) values('" & Me![学员编号] & "','" & Me![学员姓名] & "','" & Me![科目4] & "','" & Me![上课形式4] & "','" & Me![教师编号4] & "','" & Me![教师姓名4] & "','" & Me![单价4] & "','" & Me![课时4] & "','" & Me![赠送课时4] & "','" & Me![应收金额4] & "','" & Me![折扣4] & "','" & Me![实收金额4] & "','" & Me![日期] & "')"
stemp5 = "insert into 收费表(学员编号,学员姓名,科目,上课形式,教师编号,教师姓名,单价,课时,赠送课时,应收金额,折扣,实收金额,日期) values('" & Me![学员编号] & "','" & Me![学员姓名] & "','" & Me![科目5] & "','" & Me![上课形式5] & "','" & Me![教师编号5] & "','" & Me![教师姓名5] & "','" & Me![单价5] & "','" & Me![课时5] & "','" & Me![赠送课时5] & "','" & Me![应收金额5] & "','" & Me![折扣5] & "','" & Me![实收金额5] & "','" & Me![日期] & "')"
DoCmd.RunSQL stemp1
DoCmd.RunSQL stemp2
DoCmd.RunSQL stemp3
DoCmd.RunSQL stemp4
DoCmd.RunSQL stemp5
可不可以只用一个docmd.runsql
如果可以要这么写代码,我尝试了,但没成功,请高手指点
展开
 我来答
iamgubing
2012-12-10 · TA获得超过1964个赞
知道小有建树答主
回答量:364
采纳率:100%
帮助的人:344万
展开全部
之所以弹出5个提示框,主要原因如下:
>>>>>实际上access在追加、更新、删除记录等等时,都会出现一个类似的对话框,用以给误操作一个改正机会。为了不出现上述的对话框,有以下方法:
1、access2007的左上角有一个圆形图标,单击,选择“access选项”,在“高级”中有个“确认”,下面有三个选项,分别是“记录更改”“文档删除”“动作查询”,去掉打钩,就不会再出现提示框了。(access2003应该也有类似的选项,同理操作即可)。
上述的方法是针对你电脑整个access系统的,也就说你再用你电脑里access编另外的数据库系统,它也不会有提示框,如果你只想要你现在的数据库系统不出现提示框,可用下面说的第二种方法。
2、你编好的数据库程序里应该有一个启动窗体或主切换窗体,在这个窗体的打开或加载事件中输入如下的代码(它的性质和第一点所说的是一样的,相当于一进入程序时去掉打钩):
Application.SetOption "确认记录更改", False
Application.SetOption "确认文档删除", False
Application.SetOption "确认动作查询", False
在你最终退出access程序的代码前,输入下面的代码(它的性质相当于对“记录更改”“文档删除”“动作查询”选框又打钩):
Application.SetOption "确认记录更改", True
Application.SetOption "确认文档删除", True
Application.SetOption "确认动作查询", True
这样相当于又回到access默认的选择打钩的状态,对其它的access数据库系统不产生影响。
>>>>>如果要只出现一个,您只能加上msgbox语句来实现,如下:
前面的一样
……
if msgbox("正准备插入新记录,确定插入吗?",vbyesno) =vbyes then
DoCmd.RunSQL stemp1
DoCmd.RunSQL stemp2
DoCmd.RunSQL stemp3
DoCmd.RunSQL stemp4
DoCmd.RunSQL stemp5
end if
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式