Office中国论坛/Access中国论坛

标题: 关于主窗体控件筛选子窗体记录的问题 [打印本页]

作者: jackysu78    时间: 2009-3-18 12:51
标题: 关于主窗体控件筛选子窗体记录的问题
如附件:请高手指导直接通过主窗体的控件来筛选子窗体记录的查询如何实现?
盼复,谢谢!
作者: jackysu78    时间: 2009-3-18 12:52
注:不想通过设置查询条件来实现,是否代码就可以实现。谢谢!
作者: 红尘如烟    时间: 2009-3-18 13:15
  1. Private Sub btnquery_Click()
  2.     Dim strWhere As String

  3.     If IsNull(Me.SQLField) Or IsNull(Me.SQLValue) Then
  4.         strWhere = "true "
  5.     Else
  6.         strWhere = Me.SQLField & " like '*" & Nz(Me.SQLValue) & "'"
  7.     End If
  8.     Me.formsql.Form.Filter = strWhere
  9.     Me.formsql.Form.FilterOn = True
  10. End Sub
复制代码

作者: jackysu78    时间: 2009-3-18 13:27
确实如此,太谢谢你了,这么快得到你的指导。
作者: jackysu78    时间: 2009-3-18 13:38
不好意思,刚刚又想想,如果是一个时间段查询应该如何处理?请大师指点!
作者: 红尘如烟    时间: 2009-3-18 13:46
Private Sub btnquery_Click()
    Dim strWhere As String

    If IsNull(Me.SQLField) Or IsNull(Me.SQLValue) Then
        strWhere = "true "
    Else
        strWhere = Me.SQLField & "Between #" & Me.txtStartDate & "# And #" & Me.txtEndDate & "#"
    End If
    Me.formsql.Form.Filter = strWhere
    Me.formsql.Form.FilterOn = True
End Sub
作者: jackysu78    时间: 2009-3-18 13:58
真是太好了。首先还是要表示感谢!

我现在的意思是包括上面的两种情况同时存在,呵呵。

对不起,没说清楚。(现在日期期间有个复选框控制)
作者: 红尘如烟    时间: 2009-3-18 14:39
[attach]36759[/attach]
作者: jackysu78    时间: 2009-3-18 14:49
谢谢!
第一个if then语句中的"or chkusedate"要去掉。
作者: jackysu78    时间: 2009-3-18 14:49
问题已解决!感谢红尘如烟。
作者: luhao    时间: 2009-3-19 19:38
1# jackysu78
对比一下这个例子效果如何




欢迎光临 Office中国论坛/Access中国论坛 (http://www.office-cn.net/) Powered by Discuz! X3.3