20 以上のテーブルを持つ MS Access 2016 データベース (*.accdb) があります。それぞれのフィールドは、テーブルごとにわずかに異なります。私は VBA の経験がないので、以下の SQL クエリのみに固執しています (編集済み)。
SQL スクリプト
以下のmyvarは、変更を適用するテーブルを入力するために、スクリプトの実行時にプロンプトが表示されるパラメーターです。
PARAMETERS
[myvar] TableID;
UPDATE
[myvar]
INNER JOIN
Excel_Data ON [myvar].[Part Number] = Excel_Data.[Part Number]
SET
[myvar].[Value] = '?',
[myvar].Description = Excel_Data.Description,
[myvar].[Ref] = '?'
.
.
.
WHERE
[myvar].Description Is Null;
出力
エラーメッセージ:
Too few parameters. Expected 0.
必要なもの
できれば、VBA を使用せずに、上記の SQL スクリプト形式で上記のソリューションを使用することをお勧めします。プロンプトが表示されたらテーブル名を入力して、スクリプトが更新するテーブルを認識できるようにします。参考までに: 上記のスクリプトで示したように、テーブルではない場合に PARAMETERS が機能します。
ヘルプ/アドバイスは大歓迎です。
編集1
パラメータをテーブル名として使用することはできないようですので、VBA ソリューションを提案していただけますか? おそらくサンプルコード?