我们学校的一个部门已经要求我创建一个数据库,他们可以轻松地存储和过滤数据。
自从我使用Access以来已经很长时间了,我似乎无法记住或找到一种方法来创建一个工作宏,将一个过滤器应用于它打开的表单。
我有一个名为Main_Data的表,其中有一个名为'Class'的列。这是我想要过滤的数据,并在打开表单时显示。正在打开和过滤的表格是“阅读学生报名表”。
我现在正在使用表单构建器,并将其设置如下:
表格名称:阅读学生报名表
查看:表单
过滤器名称:
条件:[Main_Data]![Class] ='class1'
数据模式:编辑
窗口模式:正常
理想情况下,当它运行时,我希望它能让用户输入他们想要应用于过滤器的类,因为这个方法似乎我必须为每个类创建几个不同的宏,然后将它们分配给命令按钮。
非常感谢任何帮助!
答案 0 :(得分:1)
喜欢这个吗?
将此代码复制到表单的私有模块中:
Private Sub Form_Open(Cancel As Integer)
'
Dim strClass
strClass = InputBox("Please type the class name:", "Class Input", "class1")
'
' not to open the form as no class given:
'
if(IsEmpty(strClass)) then
Cancel = True
Exit Sub
end if
'
' filter by class name:
'
Me.Filter = "Class='" & strClass & "'"
Me.FilterOn = True
'
End Sub
我建议你也重命名你的表格:
Form Name: Reading Student Entry Form => frmStudentEntry
避免表单名称中的空格总是很好的。