我是Access 2010 VBA的新手,但具有扎实的SQL背景。我正在尝试根据复杂过滤器从toogle按钮打开/浏览表单。
表单名为:FormSuivi
在SQL中,过滤器将如下所示:
WHERE Randomise = 'Y' AND ActualSxDate is not null
AND datediff('d', Date(),ActualSxDate) > 140 AND DCD = 0;
在此Accessdatabase中,以下字段的类型为:
目前,我所做的只是一次实施一个条件:
Private Sub Toggle25_Click()
DoCmd.BrowseTo acBrowseToForm, "FormSuivi", , "Randomise = """ & "Y" & """"
End Sub
如何将SQL中列出的所有条件压缩到VBA命令行中?
答案 0 :(得分:0)
参数WhereCondition
可以是完整的WHERE字符串,不带WHERE关键字。包括AND,括号等。
单引号'有助于保持字符串可读(与“”“结构相对)。
需要连接变量,例如
Dim S As String
S = "Randomise = '" & strRandomise & "' AND ActualSxDate is not null " & _
"AND datediff('d', Date(),ActualSxDate) > 140 AND DCD = " & bDCD
DoCmd.BrowseTo acBrowseToForm, "FormSuivi", , S