2017-09-26 37 views
0

上記のコードでupdate文を実行しようとしていますが、DoCmd.RunSQL SQL3を実行すると、3265:Itemがこのコレクションに見つかりません。出典:DAO.QueryDefs。 誰かが私がここで何が不足していると示唆すれば素晴らしいだろう。3265:このコレクションにアイテムが見つかりません

SQL4 = "SELECT id from tblLastID" 
Set temprsGenerateBilling = CurrentDb().OpenRecordset(SQL4) 
bookingID = temprsGenerateBilling.Fields(0).Value + 1 
SQL3 = "UPDATE tblLastID SET id=" & bookingID 
DoCmd.RunSQL SQL3 

答えて

0

すでに開いているレコードセットを使用します

SQL4 = "SELECT id from tblLastID" 
Set temprsGenerateBilling = CurrentDb().OpenRecordset(SQL4) 

If temprsGenerateBilling.RecordCount = 0 Then 
    temprsGenerateBilling.AddNew 
Else 
    temprsGenerateBilling.Edit 
End If 
temprsGenerateBilling.Fields(0).Value = Nz(temprsGenerateBilling.Fields(0).Value, 0) + 1 
temprsGenerateBilling.Update 

temprsGenerateBilling.Close 
+0

こんにちはグスタフを。提案していただきありがとうございます。 temprsGenerateBilling.Fields(0).Value = Nz(temprsGenerateBilling.Fields(0).Value、0)+ 1行を実行しようとするとエラーが発生する3027:Can not update。データベースまたはオブジェクトは読み取り専用です。 ソース:DAO.Field3027:更新できません。データベースまたはオブジェクトは読み取り専用です。 出典:DAO.Field –

+0

まあ、それを整理する必要があります。テーブルがSQL Serverに属している場合、多くのオプションがあります。 – Gustav

+0

はい、テーブルはSQL Serverに属します。私はあなたが道を提案するなら、本当に感謝します。 –

関連する問題