• ベストアンサー

ACCESSのクエリで値の読み換え

お世話になります。 例えば、フィールドAの値が 1なら”可” 2なら”不可” 3なら”保留” 4なら”検討中” 5なら”分からない” とフィールドBに変換したい場合は どのようにすれば良いでしょうか? クエリの関数で実行できればうれしいのですが。 よろしくお願い致します。

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

  • ベストアンサー
  • m3_maki
  • ベストアンサー率64% (295/459)
回答No.1

数値型で、 1 から 順になっているなら B: Choose(Nz([A],0),"可","不可","保留","検討中","分からない") とか。 テキスト型 とか、1 から 順になっていない場合などでは Switch 関数が使えます。 B: Switch([A]="1","可",[A]="2","不可",[A]="3","保留",[A]="4","検討中",[A]="5","分からない") 表示する内容が 変更される可能性が あるなら テーブルにしておいて、クエリで テーブルから 値を引っ張ってくる方が 変更が簡単で、修正ミスの発生を防ぐことが出来るので ベターだと思います。

ooolsooo
質問者

お礼

ありがとうございます。できました!

その他の回答 (1)

  • nicotinism
  • ベストアンサー率70% (1019/1452)
回答No.2

Choose 関数を使用します。 フィールドB:Choose([フィールドA],"可","不可","保留","検討中","分からない") のように。 詳しくはヘルプで調べてください。

ooolsooo
質問者

お礼

ありがとうございます。できました!

関連するQ&A

  • アクセスのクエリの作り方

    エクセルのIF関数のようなクエリを作りたいのですが、 A,B,Cのフィールドで Cのフィールドが0のときはBも0。 Cに何か数字が入ったときは、BのフィールドにはA*0.7という数字が入るようなクエリを作りたいと思っています。 関数文を教えてください。

  • アクセスのクエリで

    アクセスのクエリで、テーブルAのフィールド1が"a"又は、"b"の場合は、"ABC"と表示し、それ以外の場合は、テーブルAのフィールド2に対応している、テーブルBのフィールド1の値を表示させる事はできますか? 誰か教えて下さい。よろしくお願いします。

  • Accessの削除クエリで「クエリが複雑すぎて実行できません」

    困っています。どなたかご存知の方がいらっしゃいましたらお願いしますm_ _m (1)Aクエリ(選択クエリ)とBテーブルを削除クエリでつなぐ(結合プロパティはAクエリ全件から→B) (2) (1)の削除クエリは、 B全件から(From B*) Bのフィールド40列ぐらい(数値列)を落とし、 (Where 条件「0」←数値ゼロをいれる) (3)削除クエリを実行すると、「複雑すぎて実行できません。」というエラーメッセージがでてきて実行できません。何か駄目なのでしょうか? やりたいことは、 Bテーブルを、 Aクエリにあるレコードは抽出し、のちフィールドの値が0のものは削除したいのです。 よろしくお願いします。

  • Accessのクエリの値を変換(代入)する方法について

    はじめまして。 MicrosoftのAccessで、クエリの値を変換したいのですが、どなたかやり方をご存知の方いらっしゃいましたら、お教え頂けないでしょうか。 具体的には、「利率区分」というフィールドを抽出すると、「5」とか「6」と出てしまうのですが、この時に「6」の場合は、18.00%、「5」の場合は17.00%というように、クエリの値を変換、もしくは代入したいのですが・・ モジュールでプログラムを組めばできそうな気がするのですが、できましたら構文例を教えて頂けないでしょうか? 宜しくお願い致します。

  • Accessクエリ 演算フィールド名を使用したい

    クエリ1の中で、演算フィールドAで算出した値を演算フィールドBに使用したいのですが 選択クエリを実行しようとすると、演算フィールドAのフィールド名に対するパラメータ入力用のウィンドウが出てきてしまいます。 【クエリ1】 演算フィールドA aaa:x+y+z 演算フィールドB bbb:[aaa]*24 →選択クエリを実行すると、[aaa]のパラメータ入力を要求される 解決方法がありましたら教えていただけますでしょうか。 よろしくお願い致します。

  • アクセスのクエリ フィールドの合計

    フィールドの合計 アクセスのクエリでいくつかのフィールドの合計を出そうとして クエリのフィールドに以下の式をいれております。 ⇒合計:([A])+([B])+([C]) (例えば[A][B][C]のフィールドの合計を出すとして) しかし、[A]の値が1、[B]の値が2、[C]の値が2と入っている場合は5と合計値が当然でますが 例えば[C]のフィールドが空欄の場合、合計値欄が空欄で表示されます。 非常に簡単な質問かと恐縮ですがおしえてください!

  • ACCESS クエリの引き算

    よろしくお願い致します。 クエリ上で計算をしています。 デザインビューで フィールド   組      A班     B班    テーブル   データ    データ    データ 集計    グループ化   カウント   カウント 並べ替え 抽出条件 という状態で、さらに フィールドB班の隣に「A-Bの差」を設けて、「A班のカウント値」-「B班のカウント値」を単純に引き算をしたいのですが、うまくいきません。 集計を「演算」にしてみて、フィールドに  A-Bの差:Count([A班]-[B班]) と入力してみましたが、実行すると表示される値は全て「1」になってしまいます。 単純にカウントした値を引き算したいだけなのですが・・・。 ヘルプを見てもよく分からないので、教えてください。

  • アクセスのクエリで

    アクセスのクエリで、テーブルAのフィールド1が空白の場合は、0と表示し、(数値型)そうでない場合はフィールド1の値を表示するにはどの様にしたら良いですか? 誰か教えて下さい。よろしくお願いします。

  • Accessクエリに入力する式について教えてください。

    こんにちはWin98SE/Access2000です。 例えば AフィールドのチェックボックスがONで尚且つ、Bフィールドに数値型の値が入っていて、さらにCフィールドに日付が入った時に DフィールドにBフィールドの値を取込むと言う作業をAccessにさせたいのですが、Accessのクエリ(デザインビューのフィールドか抽出条件に設定)で関数又はSQLを使用して実現できますか。 もし出来るようでしたら、例的なもので結構ですので式等アドバイスをいただけないでしょうか宜しくお願いします。 (関数&SQL初心者です。)

  • Access クエリ

    INSERT INTO テーブルA SELECT * FROM テーブルB WHERE (フィールド1= 値を入力してください); 上記のような追加クエリがあります。 実行するとインプットボックスが表示されますが、 メッセージを改行して2行表示することは出来ませんか?

専門家に質問してみよう