不完全確定如何解決這個代碼給我一個運行時錯誤3021:沒有當前記錄。運行時錯誤3021
目的是單擊此按鈕,它將填充查詢的第一條記錄的結果的幾個文本框。然後應該使用MoveNext從查詢結果的下一個記錄中填充另外兩個文本框。
Private Sub btnSCC07_Click()
Dim dbs As DAO.Database
Dim rsTable As DAO.Recordset
Dim rsQuery As DAO.Recordset
Set dbs = CurrentDb
Set rsQuery = dbs.OpenRecordset("SELECT * FROM qrySccS2 WHERE PAYORNAME = 'Medicaid' AND OVERRIDECODESALL = 7", dbOpenDynaset)
rsQuery.FindFirst ("[PAYORNAME]='Medicaid'")
num1 = rsQuery!PAYPLANNAME
num2 = rsQuery!Count
txtMedicaid9 = num1
txtMedicaidCount9 = num2
Debug.Print (txtMedicaid9)
rsQuery.MoveNext
Debug.Print ("Test")
num3 = rsQuery!PAYPLANNAME
num4 = rsQuery!Count
txtMedicaid10 = num3
txtMedicaidCount10 = num4
rsQuery.Close
Set rsQuery = Nothing
因此,第一部分工作,但它是當它到達行num3 = rsQuery!PAYPLANNAME是它拋出錯誤的地方。提前感謝您提供的任何見解。
你需要檢查記錄計數,以確保您有結果返回。 rsQuery.RecordCount或rsQuery.EOF – Sorceri
@Sorceri嗯所以我只是試過,debug.print返回1 ......但是當我運行查詢本身的參數它返回12結果? –
在打開記錄集'rsQuery.MoveLast rsQuery.MoveFirst'後使用行來強制計數。爲什麼你有沒有循環的MoveNext? – June7