2017-02-06 6 views
0

イベント用とユーザー用の2つのコンボボックスでフォームを作成しました。ボックスの2つのクエリにはEvent_idとPeople_idが含まれていますが、表示されていません。アイデアは、ドロップダウンからイベントを選択し、イベントに参加する人を追加することです。私の問題は、SQLの更新スクリプトにこれらの2つのIDを渡しています。Microsoft AccessはフォームからVBに変数を渡します

以下はVBです。私は424エラーを受け取り、そのエリアとしてSQLを呼び出します。

どういうところが間違っていますか?

Private Sub Command15_Click() 

Dim dbs As DAO.Database, sql As String, rCount As Integer 

    Set dbs = CurrentDb 

    sql = "INSERT INTO Whos_Going (Event_ID, Who_is_invited) " _ 
    & "VALUES(" & Event_id.Text & ", " & People_id.Text & ")" 

    dbs.Execute sql, dbFailOnError 

    rCount = dbs.RecordsAffected 

If rCount > 0 Then 
MsgBox "Person Added to Event" 
'update listbox 
conInfo.Requery 
End If 

End Sub 

答えて

0

有効なSQL文を作成する必要があります。すべての文字列リテラルは'に囲まれている必要があります。すべての日付は#に囲まれている必要があります。それに加えて、文字列変数にアポストロフィが含まれている場合は、''に置き換える必要があります。正しい構文は次のようになります。

sql = "INSERT INTO Whos_Going (Event_ID, Who_is_invited) " _ 
    & "VALUES('" & Replace(Event_id.Text, "'", "''") & "', '" _ 
    & Replace(People_id.Text, "'", "''") & "')" 
+0

いいえ、まだ424エラーが正しい変数ですか?画面には –

+0

オブジェクト必須エラーの形式では表示されません。こちらをご覧ください:https://www.techonthenet.com/access/questions/obj_required.php – cha

関連する問題