此主题相关图片如下:qq图片20160906234215.png
图中窗口中Table关联是“资产卡片”表,TABLE表属性 “作为副本”选择的是“True”
在下查询过滤框中输入了过滤条件,但是点“过滤”按钮时不执行数据过滤。
代码如下:
Dim Filter As String
With e.Form.Controls("textbox1")
If .Value IsNot Nothing Then
Filter = Filter & "code Like '*" & .Value & "*' Or name Like '*" & .Value & "*' Or SPECS Like '*" & .Value & "*' Or note Like '*" & .Value & "*'"
End If
End With
With e.Form.Controls("combobox1")
If .Value IsNot Nothing Then
If Filter > "" Then
Filter = Filter & " And "
End If
Filter = Filter & "sybmname Like '*" & .Value & "*'"
End If
End With
With e.Form.Controls("combobox2")
If .Value IsNot Nothing Then
If Filter > "" Then
Filter = Filter & " And "
End If
Filter = Filter & "afname Like '*" & .Value & "*'"
End If
End With
If Filter > "" Then
Tables("assetcard").Filter = Filter
Dim r As Integer = CurrentTable.Rows.Count
MessageBox.Show("共找到 " & r & "条符合条件的资产信息!", "提示")
End If
注:将TABLE表属性中“作为副本”选项“选择为”False“ 则能正常过滤。
因为此窗口为别的地方引用用来做选择的窗口,此处只能作为副本,需要在事件中执行代码。
个人分析是作为副本后执行过滤的表名称定义得不对,
问题出在 Tables("资产卡片").Filter = Filter
请问此处应该如何指向已经作为副本了的表。
请指导。