• ベストアンサー

エクセルのIF式教えて下さい。

何度やっても上手く思うように行きません。 IF式の組み立て方が悪いのか? AND、ORの使い方が悪いのか? お手上げの状態です。 質問は、2つのパターンです。 助けて下さい。 質問1 セルA1にデータ10と入力 セルA5にデータ5と入力 セルA9に大きい値の10を表示させ、セルA1が空欄の時は、空欄にしたい。 セルA10に小さい値の5を表示させ、セルA5が空欄の時は、空欄にしたい。 質問2 セルB2に1を入力 セルC2に1を入力 セルD2に両方が1以上ならOK、それ以外ならNGと表示させたい。 以上の2つの質問のIF式を教えて下さい。

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

  • ベストアンサー
  • tom04
  • ベストアンサー率49% (2537/5117)
回答No.5

No.3・4です! 補足の件について・・・ 質問1の >両方に記入されない場合 はどちらか一方に入力があればA9セルに大きい数値を!A10に小さい数値を表示! というコトで良いわけですね? A9セルに =IF(AND(A1="",A5=""),"",MAX(A1,A5)) A10セルに =IF(AND(A1="",A5=""),"",MIN(A1,A5)) 次に >質問2についても、セルB2、C2が空欄で両方に記入されない場合、空欄にしたいのです に関しては B2・C2両方のセルが空白の場合のみD2セルが空白になれば良い!ということだとして・・・ =IF(COUNTBLANK(B2:C2)=2,"",IF(AND(B2>=1,C2>=1),"OK","NG")) としてみてください。 ※ この場合どちらか一方が空白の場合は「NG」と表示されてしまいます (Excelの場合 空白=0 と見なします) もし、どちらか一方が空白の場合はD2セルも空白!というコトであれば D2セルは =IF(COUNTBLANK(B2:C2),"",IF(AND(B2>=1,C2>=1),"OK","NG")) という数式にしてみてください。 ※ 質問1に関してもどちらかが空白の場合はA9・A10セルも空白に!というコトであれば 数式内の「AND」の部分を「OR」に変更してみてください。 今回も外していたらごめんなさいね。m(_ _)m

river1
質問者

お礼

度々のご回答ありがとうございます。 おかげを持ちまして、素晴らしい計算表が完成です。 感謝!感謝です! 仕事柄、バカ高い計算ソフトを買えず、エクセルで作っている次第です。 昨今、不況の中、値切られる世の中なので・・・ 本当にありがとうございました。

その他の回答 (4)

  • tom04
  • ベストアンサー率49% (2537/5117)
回答No.4

No.3です! たびたびごめんなさい。 質問1の方は勘違いしていると思います。 おそらくNo.2さんの方法が正解かと・・・ 質問ではA9セルは A1が空白の場合は空白に、そうでない場合はA1を! A10セルには A5が空白の場合は空白に、そうでない場合はA5を! という意味ですよね? 前回の場合はA9セルにA1・A5の大きい方が、 A10セルにはA1・A5の小さい方が表示されてしまいます。 何度も失礼しました。m(_ _)m

river1
質問者

お礼

何度もご回答して頂き、恐縮の限りです。 ありがとうございました。

river1
質問者

補足

ご回答ありがとうございます! 質問1について 御免なさい。 質問の仕方が足らなかったみたいなので、補足します。 セルA5とA10を比べて、A9には大きい値、A10には小さい値を表示させたいのです。 セルA5とA10が空欄で、両方に記入されない場合、A9とA10は空欄にしたいのです。 質問2についても、セルB2、C2が空欄で両方に記入されない場合、空欄にしたいのです。 ANDやORの関数を使わなくても良くてホットしました。 お手上げになったのは、この関数を使おうとした為でしょうか? お手数おかけしますが、今一度、お願い致します。

  • tom04
  • ベストアンサー率49% (2537/5117)
回答No.3

こんばんは! ごくごくオーソドックスに・・・ A9セルに =IF(A1="","",MAX(A1,A5)) A10セルに =IF(A5="","",MIN(A1,A5)) D2セルに =IF(AND(B2>=1,C2>=1),"OK","NG") としてみてください。m(_ _)m

river1
質問者

お礼

こちらの方も、簡単な計算表作りに利用させて頂きます。 ありがとうございました。

  • parts
  • ベストアンサー率62% (6366/10151)
回答No.2

特に計算方法を問わないなら 質問1は、=IF(A1="","",A1)をセルA9に入れ、セルA10に=IF(A5="","",A5)、 この記述では、空白以外でA1とA5の数字をA9、A10に表示します。 後ろのA1およびA5を10や5にすることで、空白以外は5または10になります。 質問2は、=IF(B2>=1,IF(C2>=1,"OK","NG"),"NG") これは、>=が以上(1を含む)を意味します。わかりやすい方法としては二重のIFで一つ一つ計算します。B2をまず計算し、1以上であれば、C2を参照します。同じようにC2が1以上なら、OKと表示します。 いかがでしょうか? たぶん、これでお望みの結果が出ると思いますけど。

river1
質問者

お礼

ご回答ありがとうございます。 おかげを持ちまして、素晴らしい計算表が完成です。 感謝!感謝です! 仕事柄、バカ高い計算ソフトを買えず、エクセルで作っている次第です。 昨今、不況の中、値切られる世の中なので・・・ 本当にありがとうございました。

river1
質問者

補足

ご回答ありがとうございます! 質問1について 御免なさい。 質問の仕方が足らなかったみたいなので、補足します。 セルA5とA10を比べて、A9には大きい値、A10には小さい値を表示させたいのです。 セルA5とA10が空欄で、両方に記入されない場合、A9とA10は空欄にしたいのです。 質問2についても、セルB2、C2が空欄で両方に記入されない場合、空欄にしたいのです。 ANDやORの関数を使わなくても良くてホットしました。 お手上げになったのは、この関数を使おうとした為でしょうか? お手数おかけしますが、今一度、お願い致します。

回答No.1

自分の頭で考えたものを書き給え!

river1
質問者

お礼

態々のご回答!ありがとさんです!