删除所有符合指定条件的记录
时 间:2017-04-25 10:35:11
作 者:杨雪 ID:42182 城市:南京
摘 要:删除数据技巧: SetOption 方法、Do While…Loop 语句
正 文:
如果需要一次性删除所有符合条件的记录,可以先通过Filter 属性筛选出所有符合条件的记录,再使用RunCommand 方法和Do While…Loop 语句逐条删除符合条件的所有记录,其具体语法:
Do While [循环结束的条件]
Me.Filter = [筛选条件]
Me.FilterOn = True
DoCmd.RunCommand acCmdDeleteRecord
Loop
为了避免Access内置对话框的干扰,需要使用Application 对象的SetOption 方法在程序运行过程中进行屏蔽,其具体语法:
'禁用系统内置的删除提示对话框
Application.SetOption "Confirm Action Queries", 0
Application.SetOption "Confirm Document Deletions", 0
Application.SetOption "Confirm Record Changes", 0
在程序结束运行前,还需要解除内置对话框的屏蔽,否则会使程序在其他Access 应用时出现内置对话框不能使用的情况。解除屏蔽的方法为,将上述3条代码中的“0”改为“1”。
代码:
'删除所有部门符合指定条件的记录
Private Sub cmd_删除_Click()
'当所有符合条件的数据删除完毕,或者没有符合条件的 _
记录时,单击“删除”按钮出错
On Error GoTo 删除完毕
'禁用系统内置的删除提示对话框
Application.SetOption "Confirm Action Queries", 0
Application.SetOption "Confirm Document Deletions", 0
Application.SetOption "Confirm Record Changes", 0
'自定义删除提示对话框
Dim Msg As Integer
Msg = MsgBox("确认全部删除?", vbOKCancel)
'删除符合条件的对话框
If Msg = vbOK Then
'删除所有符合条件的记录
Do While Me.Recordset.EOF = False
Me.Filter = "[部门] like '*" & txt_部门 & "*'"
Me.FilterOn = True
DoCmd.RunCommand acCmdDeleteRecord
Loop
删除完毕:
MsgBox "删除完毕!"
Else
MsgBox "已取消删除!"
End If
'显示删除所有符合条件的记录后剩余的记录
Me.FilterOn = False
'启用系统的内置对话框
Application.SetOption "Confirm Action Queries", 1
Application.SetOption "Confirm Document Deletions", 1
Application.SetOption "Confirm Record Changes", 1
End Sub
Access软件网官方交流QQ群 (群号:54525238) Access源码网店
常见问答:
技术分类:
源码示例
- 【源码QQ群号19834647...(12.17)
- 用Access连续窗体制作的树...(11.03)
- 【Access高效办公】上一年...(10.30)
- Access制作的RGB转CM...(09.22)
- Access制作的RGB调色板...(09.15)
- Access制作的快速车牌输入...(09.13)
- 【Access高效办公】统计当...(06.30)
- 【Access高效办公】用复选...(06.24)
- 根据变化的日期来自动编号的示例...(06.20)
- 【Access高效办公】按日期...(06.12)
学习心得
最新文章
- 用Access连续窗体制作的树菜单...(11.03)
- 【Access高效办公】上一年度累...(10.30)
- Access做的一个《中华经典论语...(10.25)
- Access快速开发平台--加载事...(10.20)
- 【Access有效性规则示例】两种...(10.10)
- EXCEL表格扫描枪数据录入智能处...(10.09)
- Access快速开发平台--多行文...(09.28)
- 关于从Excel导入长文本数据到A...(09.24)
- Access制作的RGB转CMYK...(09.22)
- 关于重装系统后Access开发的软...(09.17)



.gif)
