以下SQL查询的结果中没有结果或空白的Excel表格。如果我删除条件但它需要它,它工作正常。所以请帮助我纠正我的代码在哪里条件。代码如下 - Private Sub cmdOpenQuery_Click()
green background box
答案 0 :(得分:0)
您的where条件使用strFieldValue作为要查找的值。您应该使用strFieldValue持有的用法进行比较。您已经使用strTableName正确地执行了此操作。这是同样的想法。添加时,您需要将strFieldValue的值括在引号中。
strSQL = strBaseSQL & Left$(strCriteria, Len(strCriteria) - 1) & " FROM [" & strTableName & "]" & " Where [" & strFieldName & "] = '" & strFieldValue & "'"
答案 1 :(得分:0)
我做了一些更正,它现在可用于所有格式,如数字,文本和日期类型。
在类型条件下进行更正: -
If strFieldType = 4 Then
strFieldValue = Me.cboEqualto
ElseIf strFieldType = 10 Then
strFieldValue = "'" & strFV & "'"
ElseIf strFieldType = 8 Then
strFieldValue = "#" & strFV & "#"
End If
并在strSQL中进行了更正: -
strSQL = strBaseSQL & Left$(strCriteria, Len(strCriteria) - 1) & " FROM [" & strTableName & "]" & " Where [" & strFieldName & "] = " & strFieldValue & ""