vba
  • ms-access
  • 2017-07-19 13 views -3 likes 
    -3

    これについていくつかの質問がありますが、私はこのコード行を数時間見ていますが、問題を理解できません。このコード行には構文エラーがあり、私はそれを見ることができません。どんな助けもありがとう。ありがとう。更新ステートメントのVBA構文エラー

    db.Execute "UPDATE Questions SET Date = #4/26/2014#,TwoChapt=False " & _ 
          " WHERE Book = '" & rs!Book & "' AND Chapter = '" & _ 
           rs!Chapter & "' AND QuestionType = 1 " 
    
    +2

    は、私は(!!今のところから)専門家ではないんだけど、 '予約語Date'ではないので、それはフィールドであることを示すために' [日] 'としてコーディングする必要があります名? – YowE3K

    答えて

    1

    は、クエリ定義でparameterized queriesを検討し、あなたの文字列の値を補間避ける:

    SQL(保存されたAccessクエリオブジェクトとして保存)

    PARAMETERS BookParam Text(255), ChapterParam Text(255); 
    UPDATE Questions 
    SET [Date] = #4/26/2014#, TwoChapt = False 
    WHERE Book = [BookParam] AND Chapter = [ChapterParam] AND QuestionType = 1; 
    

    VBA(場所レコードセット内のループDimおよびSet ... = Nothingを除く)

    ... 
    Dim qdef As Querydef 
    Set qdef = Currentdb.Querydefs("MyStoredQuery") 
    
    Do While ... 
        ' BIND PARAMS 
        qdef!BookParam = rs!Book 
        qdef!ChapterParam = rs!Chapter 
    
        ' EXECUTE ACTION 
        qdef.Execute, dbFailOnError 
    Loop 
    
    Set qdef = Nothing 
    
    関連する問題