我正在嘗試撰寫一個 vba 代碼,它將在 Access 中創建一個查詢,其中的 where 條件基于另一個表中的單元格的值。我的問題是,當我嘗試從 varRecords(0,0) 變體中提取字串時,它成為新查詢的引數而不是字串。我嘗試使用 cstr() 函式,但它仍然成為一個引數。如果我使用 msgbox 來測驗正在創建的內容,它會顯示為一個字串。我可能在代碼中遺漏了一些東西,但基礎知識如下。
Dim dbsEmails As DAO.Database
Dim rstEmails As DAO.Recordset
Dim varRecords As Variant
Dim RecordCounter As Long
Dim qdfTemp As QueryDef
Dim strSQL As String
Dim strSQL2 As String
Set dbsEmails = CurrentDb
strSQL = "Select Email, ID from tbl_Email"
Set rstEmails = dbsEmails.OpenRecordset(strSQL, dbOpenSnapshot)
rstEmails.MoveLast
RecordCounter = rstEmails.RecordCount
rstEmails.MoveFirst
varRecords = rstEmails.GetRows(RecordCounter)
strSQL2 = "Select ID, Stuff from tbl2 Where id =" & varRecords(0,0)
SetqdfTemp = CurrentDb.CreateQueryDef("Pending Report", strSQL2)
End Function
uj5u.com熱心網友回復:
嘗試將其設為字串:
strSQL2 = "Select ID, Stuff from tbl2 Where id = '" & varRecords(0,0) & "'"
轉載請註明出處,本文鏈接:https://www.uj5u.com/net/329192.html
