2016-04-28 25 views
2

where句で2つの日付を使用するにはどうすればよいですか。コンパイラは構文に関するエラーを私に与え続けます。クエリでFROM機能を忘れてしまった、あなたがambersandsとD1およびD2を分離する必要があるかのように私は私のwhere句Excel VBA where句を使用する場合

Sub Get_Data() 
Dim cn As Object 
Dim rs As Object 
Dim strFile As String 
Dim strCon As String 
Dim strSQL, strInput As String 

strFile = "A:\Test\de.accdb" 

strCon = "Provider=Microsoft.ACE.OLEDB.12.0; Data Source=" & strFile 

Set cn = CreateObject("ADODB.Connection") 
cn.Open strCon 

d1 = InputBox("Input Start Date") 
d2 = InputBox("Input End Date") 

strSQL = "SELECT NAME, Location From db 1WHERE orderdate between ""'d1'"" AND ""'d2'"" Order By Location ASC;" 

cn.Execute strSQL 

cn.Close 
Set cn = Nothing 

End Sub 
+0

:これを試してみてください。 – ManoDestra

答えて

0

を使用するには、この構文に変えるために何が必要なのかに見え、 1は、あなたがアンパサンドを使用して文字列に変数D1およびD2を追加する必要がある単語の前にあります

strSQL = "SELECT NAME, Location FROM [name of table] WHERE orderdate between '" & d1 & "' AND '" & d2 & "'" 
+0

申し訳ありませんが、私の構文では、元のCluaseがあります。これは私にエスケープ変換エラーのエラーを与える –

2
strSQL = "SELECT NAME, Location From db WHERE orderdate between '" & d1 & "' AND '" & d2 & "' Order By Location ASC;" 
+0

親切にソリューションとしてマーク上記の作品 –

関連する問題