我在Microsoft访问应用程序中有表单
并以该形式我有2个组合框,一个显示日期,一个显示查询名称
另外,根据用户在组合框中选择的内容,我有一个动态显示表格的子表单
我尝试实现的例子:
Private Sub Form_Load()
Select Case comboBoxQueries.value
Case comboBoxQueries.value = query1
MySubForm.SourceObject = Select * from Table_Employee where Table_Employee.date = ComboBoxDates.Values
Case comboBoxQueries.value = query2
MySubForm.SourceObject = Select * from Table_School where Table_School .date = ComboBoxDates.Values
...
End Select
End Sub
最佳方法是什么?
谢谢
答案 0 :(得分:1)
我不相信你可以使用表作为子表单,但我一直使用基于表的子数据表来做这种事情。请尝试以下方法:
以下是它应该是什么样子:
Private Sub Form_Load()
Me.MySubForm.SourceObject = ""
End Sub
Private Sub ComboQueries_AfterUpdate()
Dim sql As String
Me.MySubForm.SourceObject = Me.ComboQueries.Column(1)
sql = "SELECT * FROM " & Me.ComboQueries.Column(0) & " WHERE Date = " & Me.Combo2.Value
Me.MySubForm.Form.RowSource = sql
End Sub
另外,尽量不要在表格中使用诸如“DATE”之类的保留关键字作为字段名称,这是以后创建不必要的麻烦的可靠方法。