1

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 ソリューションを提案していただけますか? おそらくサンプルコード?

4

1 に答える 1