• ベストアンサー

更新クエリーについて

更新クエリーについて教えて下さい。 元テーブルの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になります。  

質問者が選んだベストアンサー

  • ベストアンサー
  • takasgy
  • ベストアンサー率42% (30/71)
回答No.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の値を使用する。 いかかでしょうか?

すると、全ての回答が全文表示されます。

関連するQ&A

専門家に質問してみよう