1. ホーム
  2. vba

[解決済み] エラー 3340 クエリ実行時にクエリ ' ' が破損している DoCmd.RunSQL

2023-05-23 01:11:48

質問

インストールしてから KB 4484127 を解決する Office 2010 の Windows アップデートをインストールしました。 WHERE 句を含むクエリを実行すると、エラーが発生します。

たとえば、このクエリを実行します。

DoCmd.RunSQL "update users set uname= 'bob' where usercode=1"

結果、このようなエラーになります。

エラー番号 = 3340 クエリ ' ' が破損しています。

この の更新は は現在もインストールされています。

どうすれば正常にクエリを実行できますか?このアップデートをアンインストールすればよいのでしょうか?

どのように解決するのですか?

概要

これは 既知のバグ は、2019年11月12日にリリースされたOfficeの更新プログラムによって引き起こされました。このバグは、現在 Microsoft がサポートしている Access のすべてのバージョン (Access 2010 から 365 まで) に影響します。

このバグは修正されました。

  • C2R (Click-to-Run) 版の Office を使用している場合。 を使用して、"Update now" を実行してください。 :
    • Access 2010 C2R: Build 7243.5000 で修正されました。
    • Access 2013 C2R: ビルド 5197.1000 で修正されました。
    • Access 2016 C2R: ビルド 12130.20390 で修正されました。
    • Access 2019 (v1910)。Build 12130.20390 で修正されました。
    • Access 2019 (ボリューム ライセンス)。Build 10353.20037 で修正されました。
    • Office 365 月額チャンネル。ビルド 12130.20390 で修正されました。
    • Office 365 半年ごと。ビルド 11328.20480 で修正されました。
    • Office 365 Semi-Annual Extended。ビルド 10730.20422 で修正されました。
    • Office 365 Semi-Annual Targeted (半期ターゲット)。ビルド 11929.20494 で修正されました。
  • MSI 版の Office を使用している場合は、使用している Office のバージョンに一致する更新プログラムをインストールします。これらのパッチはすべて Microsoft Update でリリースされているため 保留中のすべての Windows 更新プログラムをインストールする で十分です。
    • Access 2010 MSI: 以下を修正しました。 KB4484193
    • Access 2013 MSI: 以下の問題が修正されました。 KB4484186
    • Access 2016 MSI: で修正されました。 KB4484180

最小限の再現例です。

  1. 新しい Access データベースを作成します。
  2. デフォルトの ID フィールドと長整数フィールド "myint" を持つ、新しい空のテーブル "Table1" を作成します。
  3. VBAエディタのイミディエイトウィンドウで、次のコードを実行します。

    CurrentDb.Execute "UPDATE Table1 SET myint = 1 WHERE myint = 1"

期待される結果 : 文は正常に終了しています。

実際の結果 バギーアップデートの1つをインストールした状態で ランタイム エラー 3340 が発生しました ("Query '' is corrupt")。


関連リンク