フォーム上の入力に基づいてSQL Serverテーブルに新しいレコードを挿入するVBAスクリプトがMS Accessにあります。MS AccessでSQL Insert後にメッセージボックスに新しく作成されたIDを引用します。
Private Sub Allocate_Click()
Dim strSQL As String
strSQL = "INSERT INTO dbo_ALLOCATIONS " _
& "([Employee No],[Device Serial Number],[Start Date]) VALUES " _
& "('" & Me.EmployeeNumber & "', '" & Me.SerialNumber & "', '" & Me.StartDate & "')"
CurrentDb.Execute strSQL, dbFailOnError
Dim ReceiptNo As dao.Recordset
Set ReceiptNo = CurrentDb.OpenRecordset("select @@identity")
MsgBox "Device Successfully Allocated. Receipt ID is " & CurrentDb.OpenRecordset("select @@identity")
End Sub
最後に、挿入時に自動インクリメントされたIDを照会します。私は、メッセージボックスでこれを引用して、ユーザが他の場所でそれを利用できるようにしたいと考えています。どうすればMsgBoxコマンドのように引用することができますか?今の私が持っているのは、このコマンドを組み合わせることができないという事実の周りに多くの問題を引き起こし、「ReceiptNo」だけを使用するときは文字列ではないと言います。
これは、必要に応じて正確に動作します。前にReceiptNoを追加しましたが、必要な結果を得た列番号の選択を追加していませんでした – Gallus