1

次のフィールドを持つ大きなテーブルがあります。

Date
Product_ID
AmountEUR_Field1
AmountEUR_Field2
AmountEUR_Field3
AmountEUR_Field4
AmountEUR_Field5

ここで、各AmountEURフィールドは製品の売上高を表します。5 つの異なる AmountEUR フィールドがある理由は、それらが異なる通貨レート (たとえば、BeginingOfMonthRate、AverageMonthRate、EndOfMonthRate など) に基づいているためです。

特定のAmountEURフィールドを別のテーブルにコピーしたいのですが、コピーされるAmountEURフィールドは時間とともに変化します (AmountEUR_Field2 の場合もあれば、AmountEUR_Field5 の場合もあります)。したがって、別のテーブルの変数に基づいて特定の列を選択する必要があります。(その変数は 1 から 5 の間の値を持つ必要があります)。

正しい AmountEUR_Field で更新されるAmountEUR_ToBeUsedという新しいフィールドを作成することを考えていましたが、コピーする特定の列を選択するという同じ問題に戻ります。

Access クエリ デザイナー内で解決策を作成できますか、それとも VBA コードが必要ですか?

4

1 に答える 1

2

これは、アクセス クエリ デザイナーを使用して作成できます。

具体的には、関数が必要になりますIIF

たとえば、日付の前に AmountEUR_Field1 を使用し、それ以外の場合は AmountEUR_Field5 を使用するように指定する場合は、次のように指定できます。

IIF(somedate<#1/1/2011#,AmountEUR_Field1,AmountEUR_Field5)

PC の設定によっては、次のように言わなければならない場合があります。

IIF(somedate<#1/1/2011#;AmountEUR_Field1;AmountEUR_Field5)
于 2011-11-22T10:23:44.160 に答える