質問: if関数についておしえてください。 お世話になります。 作成している表の中で、利用しようとおもっている関数について教えてください。 a1セルに下記のようなif関数を作成しました。 =if(and(b2>=1,c2<=0),"○",if(and(c2>=1,b2<=0),"○",if(and(b2>=1,c2>=1),"○",if(and(b2<=1,c2<=1),"")))) b2セルは別シートからvlookupを利用して検索してきて、数字を表示させているセルのため、 該当しない場合”#n/a”と 表示されるところがありました。それで、”=if(iserror”を利用して、#n/aと表示される場合、空白で表示される数式にしたところ、今度はa1セルが条件にあっていないのに”○”と表示されるようになりました。≪”b2=空白(”#n/a”),c2<=1の場合にあたるのだと思います。≫ *b2セルを”空白”ではなく”0”で表示させるようにしても同様に”○”となりました。 a1セルに、 b2>=1,c2<=0の場合”○” c2>=1,b2<=0の場合”○” b2>=1,c2>=1の場合”○” b2<=1,c2<=1の場合"空白" で表示できる方法をご存じの方、ご教示お願いいたします。 簡単なことなのかもしれませんが、エクセル関数初心者のため、大変困っております。 うまく、不明な点を説明できていませんでしたら、申し訳ございません。何卒 よろしくお願いいたします。
回答: excelは文字列と数値を比較すると、必ず文字列の方を大きいと判定します。 ""は空白の文字列なので b2>=1 がtrue "0"も文字列なので b2>=1 がtrue となっています。 > *b2セルを”空白”ではなく”0”で表示させるようにしても同様に”○”となりました。 "0"ではなく、数値の0を表示させてみてください。