Ms access 使用VBA仅编辑Access窗体中的筛选条目
我一直在添加Access联系人模板,以创建一个可以管理联系人的数据库,打开的主窗体有一个填充了所有联系人信息的数据表。我将复选框功能添加到每个项目。如果选中此框,则可以对所有复选框项运行某些操作。我创建了一个宏,可以一次选择/取消选择所有联系人 但我试图做的是启用它,以便当您单击按钮时,它仅选择当前显示的项目。因此,如果我在表单中应用了一个过滤器,比如说邮政编码,我可以点击按钮将“Action”字段更改为“Yes”,这样我就可以在其上运行操作(批量发送电子邮件、将所有内容导出到outlook、创建地址标签、删除等) 在Excel中,这可以用.visible类型的东西来完成,但似乎没有像access这样的函数。我已经通过创建数据的Ms access 使用VBA仅编辑Access窗体中的筛选条目,ms-access,filter,vba,Ms Access,Filter,Vba,我一直在添加Access联系人模板,以创建一个可以管理联系人的数据库,打开的主窗体有一个填充了所有联系人信息的数据表。我将复选框功能添加到每个项目。如果选中此框,则可以对所有复选框项运行某些操作。我创建了一个宏,可以一次选择/取消选择所有联系人 但我试图做的是启用它,以便当您单击按钮时,它仅选择当前显示的项目。因此,如果我在表单中应用了一个过滤器,比如说邮政编码,我可以点击按钮将“Action”字段更改为“Yes”,这样我就可以在其上运行操作(批量发送电子邮件、将所有内容导出到outlook、创
记录集
完成了所有其他方法,但是这个记录集
将没有相同的过滤器
如果我可以提供任何其他信息,请告诉我。要设置复选框的值,可以使用0或-1-在
vba
中,1表示选中,0表示未选中
Me.checkboxname.Value = -1
现在,您可以选择表单中的所有复选框,从按钮中为onclick事件创建一个函数或子函数,并添加应选中所有复选框的代码:
'code not tested but should work fine
Dim ctrl As Control '//, chbox As CheckBox
For Each ctrl In DAO.Controls
If Typeof ctrl Is MSForms.CheckBox Then
'// Set chbox = ctrl
Me.ctrl.value = -1
End If
End If
Next ctrl
在DAO.Controls的控件部分中找不到方法或数据成员的错误。这是否仅会选择显示的对象?我希望能够改变过滤器,并迅速选择所有的框。最后一个问题,我有其他复选框作为联系表的一部分,所以我只想编辑“Action”字段下的复选框,而不是其他字段。