- ベストアンサー
エクセルでIFとIFを同時に並べるには?
質問です。 エクセルで「もしA列に”B”があれば”B”、そうでなければ”C”、またA列に”~B(Bの前後に別の単語が付加している)”とあった場合は”X(ある単語)B”、”~C”とあれば”D”」というようなIF関数の書き方は出来ないのでしょうか。このあとピボットテーブルで集計したいのですが種類が多くなりすぎて面倒なのです。どなたかいい知恵をお貸しください。
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
列全体なら結果は一つでピボットテーブルは必要ないので、行単位として紹介します。 =IF(LEN(A2)=1,IF(A2="B","B","C"),IF(COUNTIF(A2,"*B*"),"XB",IF(COUNTIF(A2,"*C*"),"D","C"))) A2が"B"なら"B" 2桁以上でA2が"B"を含むなら"XB" 2桁以上でA2が"C"を含むなら"D" それ以外は"C" もし2桁以上で"B"を含まなければ"D"の場合は =IF(LEN(A2)=1,IF(A2="B","B","C"),IF(COUNTIF(A2,"*B*"),"XB","D"))
その他の回答 (2)
- Wendy02
- ベストアンサー率57% (3570/6232)
こんにちは。 #1 さんも触れていますが、私は、箇条書きにしました。 (1) >エクセルで「もしA列に”B”があれば”B”、そうでなければ”C”、 (2) >A列に”~B(Bの前後に別の単語が付加している)”とあった場合は”X(ある単語)B”、 (3)”~C”とあれば”D” --たぶん、”~C”は、(Cの前後に別の単語が付加している)の意味とします。 (1)と(2) のロジックがヘンですね。 ------------------------------ 例: (1)の条件 ABCDEF B があるので、B BCDEFG B があるので、B (2)の条件 (単語と文字とは違いますので、文字とします) × ABCDEF (1) の条件で使用済み (3) ABCDEF C の前後に文字があるので、D CDEFGH どの条件にも満たない となります。(2)の×の部分は、(1)の条件が間違いではないかと思います。もう一度、論理の組み立てをしたほうがよいのではないかと思います。
- imogasi
- ベストアンサー率27% (4737/17069)
(1) >エクセルで「もしA列に”B”があれば”B”、そうでなければ”C”、 =IF(COUNTIF(A:A,"B")>=1,"B","C") (2) >A列に”~B(Bの前後に別の単語が付加している)”とあった場合は”X" =IF(COUNTIF(A:A,"*B")>=1,"X","Y") (3) >”、”~C”とあれば”D =IF(COUNTIF(A:A,"*C")>=1,"D","Z") ------- (1)でA列に Bがある Bがない のどちらかであるから、それで完結してしまい、(2)、(3)の入る余地がないが、独立した、別問題と考えてよいのか? 質問の表現は細心の注意を払って記述してほしい。 「またA列に”~B・・」の(Bの「また」の解釈はどうすれば良いのか。 >このあとピボットテーブルで集計したいのですが種類が多くなりすぎて面倒なのです。どなたかいい知恵をお貸しください。 大きな分類を作ればよい。たとえば県ごとのデータを関東地方という上位の分類コードを作るように。 そのためには (1)関数 (2)VBA でやれる場合もあろうし (3)人手 出ないとできない場合もありうる。
お礼
ありがとうございます。わかりやすかったです。