更新クエリーについて教えて下さい。
元テーブルのAフィールドに値1,2,3
が入力されいます。それを
1を0 に
2を5 に
3を10に
更新する設定方法について教えてください。

<私が行った設定>
更新クエリーのレコードの更新欄に
IIf ( [A] = 3 , 10, [A]) or
IIf ( [A] = 2 , 5, [A]) or
IIf ( [A] = 1 , 0, [A])

で実行したのですが、更新後の値が-1になります。

 

A 回答 (1件)

or条件がまずいのが原因だと思いますので、iif関数を使用するならこんな感じ...



IIf([a]="1","10",IIf([a]="2","20",IIf([a]="3","30",[a])))

aの値が"1"だったら"10"に、そうでなければ今度は"2"だったら...と入れ子状態です。

Switch関数を使用するならこんな感じ...
Switch([a]="1","10",[a]="2","20",[a]="3","30",True,[a])
aの値が"1"だったら"10"に、そうでなければ...iif関数といっしょですが、Trueは該当する値が条件になければaの値を使用する。

いかかでしょうか?
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!


このカテゴリの人気Q&Aランキング

おすすめ情報

カテゴリ