pass string variable without quotes in query vba

前端 未结 3 1220
不知归路
不知归路 2021-01-27 07:44
Dim StoreNoToUpdate As String
Dim Marsha As String

StoreNoToUpdate = \"ABCXYZ123\"

Marsha = \"hi\"

db.Execute \"Update TblLod         


        
3条回答
  •  终归单人心
    2021-01-27 07:55

    You need to get away from SQL concatenation and start using parameters.

    Query with parameters:

    PARAMETERS [prmMarshaCode] Text (50), [prmStoreNoToUpdate] Text (50);
    UPDATE TblLodgingReport SET [MarshaCode] = [prmMarshaCode]
    WHERE [Store Number ID] = [prmStoreNoToUpdate];
    

    Calling the above query in VBA:

    With CurrentDb().QueryDefs("qryName")
        .Parameters("[prmMarshaCode]").Value = Marsha 
        .Parameters("[prmStoreNoToUpdate]").Value = StoreNoToUpdate 
        .Execute dbFailOnError
    End With
    

提交回复
热议问题