先ほど、以下のような質問をさせて頂き、回答を頂いたものについての、追加の条件を付けた場合についての数式について、ご教授お願いいたします。
◆以前、質問引用
以下の「D」の「○」「×」を数式で入力するのが目標です。
数式で表すことができますでしょうか?
条件としましては、
B>Cのとき、Aの文字列が「X1またはX2」の場合は、「○」、それ以外は「×」
C>Bのとき、Aの文字列が「Y1またはY2」の場合は、「○」、それ以外は「×」
それ以外のとき、(B=C,どこかが空白のとき)は、空白
A B C D
1 X1 37 63 ×
2 X2 78 22 ○
3 Y1 45 55 ○
4 Y2 29 71 ×
◆回答 成功しました。
=IF(OR(COUNTA(A1:C1)<3,B1=C1),"",IF(B1>C1,IF(OR(A1="X1",A1="X2"),"○","×"),IF(OR(A1="Y1",A1="Y2"),"○","×")))
◆引用終了
ここに、追加条件を付加したいのですが、
BとCどちらか大きい数字が、なおかつ80以上のもの。ただし100は除く
それ以外は空白(100の場合も空白)
という条件を付加して、80以上99以下の「○」と「×」をE列(NEW)に返したいと考えています。
回答を頂いた数式を一つずつ分解して理解しようとしましたが、どこにいれていいやら、後半の数式の使い方がいまいち理解できません。
分解(参考)
論理式 IF(OR(COUNTA(A1:C1)<3,B1=C1),
真の場合"",
偽の場合 IF(B1>C1,IF(OR(A1="X1",A1="X2"),"○","×"),IF(OR(A1="Y1",A1="Y2"),"○","×")))
宜しくお願いいたします。
No.5
- 回答日時:
判定するための条件がたくさんあるときは、それらを 1 本の数式にまとめて判定の結果のみを表示しようとはせずに、各条件への該当の有無をも載せた一覧表を作成するようにしてください。
添付図はその例です。E2 =0+(counta(b2:d2)=3)
F2 =c2-d2
G2 =countif(b2,"X*")
H2 =countif(b2,"Y*")
I2 =if(e2*f2,choose((sign(f2)*(g2-h2)+3)/2,"×","○"),"")
J2 =(80<=max(c2:d2))*(max(c2:d2)<100)
K2 =if(j2,i2,"")
親身にご回答を下さり、ありがとうございます。
一つずつデータを導き出す重要性を改めて実感します。
新たなデータ応用の判断材料が見やすく、B-Cのデータをさらに使ってみたくなりました。
ありがとうございました。
No.4
- 回答日時:
こんばんは!
A列にはX1・X2・Y1・Y2だけですかね?
一気にやることも可能ですが、
↓の画像のように作業列を使った方法です。
作業列G2セルに
=IF(B2<>C2,IF(AND(MAX(B2:C2)>=80,MAX(B2:C2)<100),1,""),"")
という数式を入れフィルハンドルでずぃ~~~!っと下へコピーしておきます。
これで「1」が標示されているものの判断だけで結果が表示できます。
結果のE2セルに
=IF(G2="","",IF(B2>C2,IF(COUNTIF(A2,"X?"),"○","×"),IF(COUNTIF(A2,"Y?"),"○","×")))
という数式を入れフィルハンドルで下へコピー!
これで画像のような感じになります。m(_ _)m
親身にご回答を頂き、ありがとうございます。
今回、試しているものは、4つの文字列でした。
ですが、今後は応用していくつもりですので、非常に勉強になりました。
ありがとうございました。
No.3ベストアンサー
- 回答日時:
長い式を使うと、後でメンテナンスする時に何をやろうとしていたのか解らなくなって、大変なんですよね。
一例ですが、作業列を使ってみました。添付の図も見て下さい。
E3: =IF(SUM(F3:H3)>0,"",IF(SUM(I3:J3)=2,"○","×"))
F3: =(COUNTA(A3:C3)<3)*1
G3: =(B3=C3)*1
H3: =(MAX(B3:C3)=100)*1
I3: =(80<=MAX(B3:C3))*(MAX(B3:C3)<100)
J3: =IF(B3>C3,OR(A3="X1",A3="X2"),OR(A3="Y1",A3="Y2"))*1
E3:J3を下方向にコピーしてF:J列を非表示にでもしてください。
親身に回答を下さり、ありがとうございます。
非表示のテクニックは最近身に付け、試してみましたが、非常にわかりやすく、まとめることがきました。
みなさんの頭の中が、シンプルで、私も一つずつ冷静に対応できるようになりたいです。
ありがとうございました。
No.2
- 回答日時:
>BとCどちらか大きい数字が、なおかつ80以上のもの。
ただし100は除くMAX(B1:C1)<80 でB:Cの大きい数値が80未満
MAX(B1:C1)>99 でB:Cの大きい数値が100以上
を追加して空白にすればいいので
=IF(OR(COUNTA(A1:C1)<3,MAX(B1:C1)<80,MAX(B1:C1)>99,B1=C1),"",IF(B1>C1,IF(OR(A1="X1",A1="X2"),"○","×"),IF(OR(A1="Y1",A1="Y2"),"○","×")))
親身にご回答をくださり、ありがとうございます。
正常に値を返すことが出来ました!
また、論理式を言い換えて考えることが、勉強になりました。
ありがとうございました。
No.1
- 回答日時:
>ここに、追加条件を付加したいのですが、
>BとCどちらか大きい数字が、なおかつ80以上のもの。ただし100は除く
>それ以外は空白(100の場合も空白)
条件が複数ある場合は、
一番優先される条件が、一番最初のif文
後はそのif文の真偽のどちらかに、優先順位に従って入れて行きます。
B>C,B<Cの判定の前に、80-99の判定をした方がよさそうですので
>偽の場合 IF(B1>C1,IF(OR(A1="X1",A1="X2"),"○","×"),IF(OR(A1="Y1",A1="Y2"),"○","×")))
の外側に新しいif文を入れます。
if(or (and(B>=79,B<100),and(C>=79,C<100), IF(B1>C1,IF(OR(A1="X1",A1="X2"),"○","×"),IF(OR(A1="Y1",A1="Y2"),"○","×")),"×"))
で良いのでは?
それとも関係なく、単に80-99を判定したいということ?
エクセルの関数自体を勉強してください。
http://pc.nikkeibp.co.jp/pc21/tech/excel36/
親身にご回答を下さりありがとうございます。
偽の場合の数式を変更し試みましたが、私の勉強不足もあり、返すことができませんでした。
ただ、IFの応用に関して、とてもシンプルに考えられるようになってきました。
ありがとうございました。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) Excelの空文字判定について 7 2023/01/06 13:25
- Excel(エクセル) 【画像あり】A1が●+B1と同じ文字がB列にある+C1と同じ文字がC列にある場合D1に〇を付ける 3 2023/03/09 18:18
- Excel(エクセル) Excel 数式を教えてください 2 2022/06/02 12:24
- Excel(エクセル) エクセルの関数式を教えてください。 2 2022/11/29 21:09
- その他(Microsoft Office) IF関数について教えてください 2 2022/05/10 13:31
- Excel(エクセル) Excel 関数 数式 について 2 2022/09/02 21:45
- Excel(エクセル) エクセル 関数について質問です。 2 2022/10/03 11:14
- Excel(エクセル) If関数に関する質問です。(再掲) 3 2022/10/01 20:51
- Excel(エクセル) 条件付き書式の設定方法を教えて下さい。 2 2023/04/14 18:12
- Excel(エクセル) エクセル関数についてお教えください 3 2023/07/24 12:33
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
エクセルで極大値を拾うには
-
エクセルVBAで別BOOKに「名前の...
-
Excelで数行間隔で離れているデ...
-
EXCELで2つの数値のうち大きい...
-
Excelで隣のセルと同じ内容に列...
-
エクセルVBA、別ブックへ転記す...
-
【EXCEL】条件に一致した最新デ...
-
エクセルで二つの数字の小さい...
-
エクセルで時刻(8:00~20:00)...
-
PowerPointで表の1つの列だけ...
-
SUMIFとCOUNTIFを合わせたよう...
-
エクセル 文字数 多い順 並...
-
エクセルでオートフィルタのボ...
-
2つのエクセルのデータを同じよ...
-
エクセル(勝手に太字になる)
-
Excelのオートフィルタで非表示...
-
エクセル 同じ値を探して隣の...
-
エクセルでの複数条件下での標...
-
Excel関数で、範囲内の最後のセ...
-
エクセルの並び変えで、空白セ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
エクセルで極大値を拾うには
-
エクセルVBAで別BOOKに「名前の...
-
SUMIF関数の合計範囲を広くする...
-
【Excel】4行ごとの和を集計し...
-
Excelで数行間隔で離れているデ...
-
EXCEL: 数式を含んだΣは可能で...
-
(EXCEL関数)特定範囲内の最大値
-
Excel、sumifはありますが、min...
-
EXCEL IF関数 AND、OR条件
-
条件付のsum,max,min関数の書き方
-
ネットワーク上のエクセルとリ...
-
1.5以上2.5未満の個数を求める...
-
因数分解が分かりません a2乗b2...
-
EXCELで2つの数値のうち大きい...
-
Excelで隣のセルと同じ内容に列...
-
エクセルで二つの数字の小さい...
-
PowerPointで表の1つの列だけ...
-
エクセルで、2種類のデータを...
-
エクセルで最初のスペースまで...
-
エクセルでオートフィルタのボ...
おすすめ情報