• ベストアンサー

エクセルで条件式を連結したい。

IF関数を使ってAなら1、Bなら2、Cなら3、Dなら4、Eなら5・・・・というように真がそれぞれ複数ある条式を連結したいのですがどうすれば良いですか?

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

  • ベストアンサー
  • t-yamada_2
  • ベストアンサー率40% (587/1460)
回答No.1

A1セルに入力してありA,B,C,D,E以外だったら空白にする場合なら、 IF(判定式,合致したらこれを表示,判定以外なら~しろ)という感じにすればいいので、 =IF(A1="A",1,IF(A1="B",2,IF(A1="C",3,IF(A1="D",4,IF(A1="E",5,"")))))

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

その他の回答 (4)

  • imogasi
  • ベストアンサー率27% (4737/17068)
回答No.5

AならのAは列番号・記号をさす用でもあり、紛らわしい質問。 Aというセルの値のとき1を返すなら、 E1:F5に a 1 b 2 c 3 d 4 e 5 と作っておいて A列にa-eが入るとして =VLOOKUP(A1,$E$1:$F$5,2,FALSE) が普通のやり方。IFのネストは、私は素人っぽくて好かない。

全文を見る
すると、全ての回答が全文表示されます。
  • maron--5
  • ベストアンサー率36% (321/877)
回答No.4

>Aなら1、Bなら2、Cなら3、Dなら4、Eなら5 ◆単なる例ではなく、アルファベットを数値化したいのならこんな方法もありますよ =CODE(A1)-64 または、 =COLUMN(INDIRECT(A1&1))

全文を見る
すると、全ての回答が全文表示されます。
  • Cupper
  • ベストアンサー率32% (2123/6444)
回答No.3

普通にIF関数をネストさせても良いかもしれませんが・・・ IF関数にこだわらないのであればこんな関数もあります。 A1が A なら 1、 B なら 2 ・・・と返ります  =SEARCH(A1,"ABCDEF") A1が 1 なら A、 2 なら B ・・・と返ります  =CHOOSE(A1,"A","B","C","D","E","F") また、条件が多すぎたり文字列で文字列を返すのであれば 対応する表を作っておき、VLOOKUP関数やINDIRECT関数を 使っては如何でしょうか。 見た目もスッキリして修正を加えるときに分かり易いです。

全文を見る
すると、全ての回答が全文表示されます。
noname#95859
noname#95859
回答No.2

こんなのは、どうでしょう? 自分用のワークシート関数を作ります。 VBA editor画面で、下記を入力します。 Function myCondition(ByVal myvalue As String) As Variant If UCase(myvalue) = "A" Then myCondition= 1 ElseIf UCase(myvalue) = "B" Then myCondition= 2 ElseIf UCase(myvalue) = "C" Then myCondition= 3 ElseIf UCase(myvalue) = "D" Then myCondition= 4 ElseIf UCase(myvalue) = "E" Then myCondition= 5 ElseIf UCase(myvalue) = "F" Then myCondition= 6 Else myCondition= "" End If End Function ワークシートに戻って、 A1=a A2=A 適当なセルに =myCondition(A1)、別のセルに =myCondition(A2) と入れると、それぞれ、1,1と表示されます。

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

関連するQ&A

  • Excelの複数の条件にあった式を教えて下さい。

       A     B     C    D    E 1   4.7          16    8    3 2  5.8          0.0   3.0   6.0 3  4.5 4  2.16 5  3.55    ・    ・      ・    ・   Aの列には1日の平均気温が入力されています。(A31まで) B1に、「A1が16℃以上だったら0.0、8℃以上16℃未満だったら3.0、3℃以上8 ℃未満だったら6.0」と式を作り、B2から下の欄も、「  」内の条件でした いのですが、教えてもらえないでしょうか? 宜しくお願いします。 あらかじめ、C1~E1に16℃、8℃、3℃と言う意味で数字を入れています。 C2~E2にも、条件を満たしたら、この数字になりなさいという意味で数字を 入れています。 IF文を使ってB1に =IF(A1>C1,”0.0”,IF(D1≦A1>C1,”3.0”,IF(E1≦A1>D1,"6.0",""))) と式を入れたのですが、#NAMEとエラーが出てきます。

  • Excelで4つの条件で計算式を変える

    できるのかできなのかもわからず、試行錯誤してましたが、途方に暮れています。 A1のセルに「あいう」か「いろは」 B1のセルに「A」か「B」 の値が入るとすると、組み合わせは あいう・A あいう・B いろは・A いろは・B の4通りになりますが、この4通りに違う式を当てはめてE1セルに表示させたいのです。 あいう・Aの時は、(C1-D1)*10 あいう・Bの時は、(D1-C1)*10 いろは・Aの時は、(C1-D1)*500 いろは・Bの時は、(D1-C1)*500 のような感じですが、IF関数、AND関数いろいろやってみましたが、「あいう」のA、Bくらいなら大丈夫ですが、「いろは」も含めるとエラーになってしまいます。   どのように関数書けばちゃんと表示される(答えがでる)でしょうか。 =IF(A1="あいう",IF(B1="A",(C1-D1)*10,(D1-C1)*10)) ↑これなら「あいう」でA、Bに分けるのはいいと思うのですが、ここから先がよくわかりません。 「いろは」でも同じ様に分けたいのです。 このIF関数、A1が「あいう」だったら、B1が「A」の場合(C1-D1)*10 そうじゃない場合(Bの場合)は(D1-C1)*10の解釈で、偽の場合にIF関数使ってA1に「いろは」だったらのような感じでIF関数入れればなんとかなるのかな?と考えましたが、そもそもその考え方がおかしいのでしょうか?

  • EXCELの条件文

    EXCELの条件文になると思うのですが A1には1、A2には2・・・A5には5が入力されており B1にはa、B2にはb・・・B5にはeが入力されている状況で 例えばC1に3を入力した場合、D1にはCを自動的に出力させたいのですが下記関数を使っても エラーとなってしまいます。(C1には1を入力したときのみaが出力されます) =IF(C1=A1:A5,B1:B5,"エラー") どのような関数式を用いればよろしいのでしょうか?

  • 条件式で差額

      A    B    C    D 1 2 1000              といった状態に、 B2に(B1に入力があればA2の3%の結果を、無ければ0を)の式を =IF(B1="","0",A2*0.03) C2に(C1に入力があればA2の10%の結果を、ただしB2に値が有ればその差額を、無ければ0を)の式を =IF(C1="","0",A2*0.1)-IF(B1="",0,B2) D2に(D1に入力があればA2の12%の結果を、ただしB2またはc2のどちらかに値が有ればその差額を、無ければ0を)の式を =IF(D1="","0",A2*0.12)-IF(B1="",0,B2)-IF(C1="",0,C2) と表記すると例えばB1とD1に入力があればB2=30,D2=90で結果は問題ないのですがC2に(-30)と表示され、同様にB1のみ入力だとC2:D2に(-30)と表示されて困ってます。 この(-30)の表示をさせない正しい条件式が見当もつかず今回投稿させてもらいました。どうか皆さんご助力お願いします。

  • エクセル関数式教えて下さいm(__)m水道料金表を作成したいのですが・・・(再度)

    使用量を「A」とします A=001~100・・・B A=101~200・・・C A=201~400・・・D A=401以上 ・・・E (例)A=「220」の時 B=100 C=100 D=20 (例)A=「550」の時 B=100 C=100 D=200 E=150 (例)の様に「A」を入力すると「B~E」の所に「A」が振り分けられる様な関数式を作成したいので教えて下さい。  また、*IF=(A<100…⇒もしAが100より小さい時…みたいに関数式の意味も教えれいただけると助かります。 宜しくお願い致します

  • Excel 条件付きの条件先が式の場合

    Excelでたとえば A1に入力された数値、B1にはA1を引数とした計算結果があるとします。B1の計算結果が0.09だった場合だけC1に1を、そのほかの場合は2を表示させようとしました。 C1に =if(B1=0.09,1,2) の式を入れましたが、B1の計算結果が0.09でもC1には2が表示されます。そこで、C1に =if(int(B1*100)=9,1,2) の式を入れても結果は同じで、D1に=text(int(B1*100),0) の式をいれてからC1に=if(D1="9",1,2) でやっと1が表示されました。 これは当たり前のことなんでしょうか。このような方法をとらないと、数字の認識は難しいのでしょうか? 教えてください。

  • エクセルで、空白のセルを無視して連結する方法を教えてください!

    エクセル2002を使っております。   A B C D         1 あ い う え     2   お   か    3 か   き く     と文字が入ったセルがあるときに   A B C D       E  1 あ い う え      あいうえ  2   お   か      おか 3 か   き く      かきく このようにE列のセルに空白を入れずに連結したいのです。 E2で、=A2&B2&C2&D2 といれて連結させると、   A B C D       E  1 あ い う え      あいうえ  2   お   か       お か 3 か   き く      か きく となってしまい困っています。どなたかよい方法をご存知でしたら教えてください。よろしくお願いいたします。

  • エクセルのIF関数について

    IF(A1-B1-C1-D1-E1-F1>0,A1-B1-C1-D1-E1-F1,0) 上の式は「A1-B1-C1-D1-E1-F1」が0より大きく真の場合その結果を、偽の場合0という式です。その結果の部分に前提となる式を繰り返しで記していて見た目非常に長くなります。別のセルに代入して参照以外の方法で真の場合を短くする手法は無いでしょうか?

  • エクセルの関数で2つの条件に合うものを探す。

    エクセルの関数で下記のことをしたいのです。 表(1) T>=0.6  0.6>T>=0.3  0.3>T>=0.15 U<2   A     B       C 2<=U<3  B     B-C     D 3<=U<4  C      C      D 4<=U<6  D     C-D     D 6<=U    E      D      D 別の表(2)に U   T         1.5  0.3         0.9  0.8             5.9  0.13         ・   ・         ・   ・ とあります。 そのためUの値とTの値で表(1)のAからE値を抽出し別の表にAからEを表示したいのです。エクセルの関数(IF,AND,LOOKUP等)を試してみたのですがうまくいきません。できるだけエクセルの関数のみで、よい方法があれば教えてください。よろしくおねがいします。     

  • 条件集計

    「条件式合計式」ウィザードを使って、3つの条件を与えた関数が以下のようになり、値が正しく返されるのですが、 自分で同じように記述しても、”{}”を記述すると関数と認識してくれません。 どうしてでしょうか。 {=SUM(IF($C$5:$C$2000=G5,IF($E$5:$E$2000=I4,IF($B$5:$B$2000=J3,$D$5:$D$2000,0),0),0))}

専門家に質問してみよう