• ベストアンサー

IF OR関数で

C1のセルに次のように式を入力しました。 =IF(OR(A1<B1),"●",IF(OR(A1>B1),"○",IF(OR(A1=B1),"△"))) これは試合結果を表示させるために作ったのですが、これだとまだ試合 をしてないところは△で表示されてしまいます。 そこで上記の式の最後に A1が空白のときは 未 と表示されるように 式を追加したいのですが、どのようにしたらいいでしょうか? IF(OR(A1=""),"未"とつけたしてみたんですがうまくいきませんでした。 どなたかご教授ください。お願いします。

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

  • ベストアンサー
回答No.1

or関数は、複数の判定式をカンマで区切って並べ、どれか一つでも TRUEならTRUEを返す関数です。中身が一つでは、or関数を使う意味 がありませんね。 > IF(OR(A1=""),"未" これを最後に追加したんじゃないですか。A1とB1がどちらも空っぽ なら、A1=B1がTRUEになります。空っぽの判定は、最初にやりま しょう。というわけで、 =if(A1="","未",if(A1<B1,"●",if(A1>B1,"○","△"))) みたいな感じ。"△"の前にifがないのは、A1<B1でもA1>B1でもない 状態はたいていA1=B1だから、判定する必要がないのです。

その他の回答 (3)

  • maron--5
  • ベストアンサー率36% (321/877)
回答No.4

◆こんな方法はいかがでしょう =IF(COUNT(A1:B1)<2,"",TEXT(A1-B1,"○;●;△"))

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

OR関数の理解が、根本的に誤解してますよ。 OR関数は()内に条件式をカンマで区切って書き並べます。 その結論はTRURかFALSEで、その各々(2通り)についてしか、セットしたい式や結果をかけません。 質問のようにORの()内に相反するA1<B1、A1>B1、A1=B1など並べません。 WEBででも照会して、学習してください。 多分質問の場合は、IF関数のネストを使う場合でしょう。 エクセルには、=SWITCH(A1<B1、A1>B1、A1=B1,"●", "○","△")のようなのはありません(これは架空例です)。 多分質問の場合は、IF関数のネストを使う場合でしょう。 Googleででも、{エクセル IF ネスト」で照会して学ぶこと。 http://kokoro.kir.jp/excel/if-and.html OR、AND関数利用でネストの深さを少なく出来ますが。 ネストの制限は2003までは最大7までの制約がある。2007では64です。 ーー 現状の課題にIF関数のネストでうまく式を作れたら、、 >A1が空白のときは 未 と表示されるように・・ を追加するのは、ネストを外側に1つ増やすだけです。

  • KURUMITO
  • ベストアンサー率42% (1835/4283)
回答No.2

A1セルまたはB1セルが空のときに未とするように式の最後で行うような式をどうしてもするとしたら次のようになります。 =IF(A1<B1,"●",IF(A1>B1,"○",IF(AND(A1<>"",B1<>"",A1=B1),"△",IF(OR(A1="",B1=""),"未","")))) ここでAND(A1<>"",B1<>"",A1=B1)はA1,B1の両セルが空白以外でA1とB1が同じの場合にはとなります。 OR(A1="",B1="")はA1またはB1が空ならばの意味になります。 通常はAND(A1<>"",B1<>""・・・のような式をなくするためには最後の式を最初に付けるようにします。 =IF(OR(A1="",B1=""),"未",IF(A1<B1,"●",IF(A1>B1,"○",IF(A1=B1,"△",""))))

関連するQ&A

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

    エクセルの関数について教えて下さい。 セルに1と入力した場合Aと出てきて、2と入力した場合B、3と入力した場合Cとなるような計算式を入れたいのですが、どのような式を入れればよろしいのでしょうか? 別のシートから呼び出す(?)というような方法でもいいのですが、どんな式を入れればよいのか、全く分かりません。 自分で調べてみた結果、IF関数を用いるということは解りました。 『IF(A1="1","A",IF(A1="2","B",IF(A1="3","C")))』 上記のような式を入れてみて、実際に実践してみたところ、結果としては入力した数字が表示されるだけで、計算式は消えてしまいました。 どうしたらいいのか解りません。 素人故に恥ずかしい質問ですが、お知恵を貸して下さい。 よろしくお願いします。

  • IF関数について

    B2セルに「もし売上高(F9)が空白(””)ならばこのセル(B2)は空白にし、そうでない場合には売上高(F9)セルの値を表示せよ」という意味のIF関数を入力する場合どんな式が入りますでしょうか? よろしくお願いします。

  • IF関数について

    IF関数について A列のセルに住所が入力されていて、「中野区」という文字列が含まれているときに「○」そうでない場合は「-」をB列セルに表示させる方法で B列セルに、 =IF(COUNTIF(A1,"*中野区*"),"○","-") を入力すれば良いことがわかりました。 この条件に加えて、A列のセルが空白の場合上の行を参照するという条件を加えたいと思います。 例A3のセルが空白の場合A2を参照しB3に表示させる。 因みに、A2も空白の場合A1を参照する。 って感じにしたいです。 宜しく御願いします。

  • IF、OR、ISBLANKの関数で出力がおかしい

    B1~B3にそれぞれ入力した数値に対し、その結果をB4~B16に出力したいのですが、 (エクセルのグラフを使わずに出力したい) 条件 (1)B1~B3が空欄時は出力しない (2)B1~B3の出力で 奇数値の場合、 例0.03だったら 0.02の箇所に表示する 数式は B10セルに =IF(ISBLANK(OR(B$1,B$2,B$3)),"",IF(OR(B$1=$A10,B$2=$A10,B$3=$A10),"○",IF(OR(B$1=$A10+0.01,B$2=$A10+0.01,B$3=$A10+0.01),"●",""))) と入力しましたが、 (1)の セルに未入力時に 0.00の欄に”○”が出力されてしまいます。 数式のどこがおかしいのかが分からないので助言お願いします。 使用エクセルは2003です。

  • IF関数とOR関数

    いつも質問ばかりですみません。 A1からA12のセルに『0』、『1』、『2』、『3』、『4』の数値が入ります。(他のシートとリンクしており、A1のセルにはシート1の計算結果が入り、A2にはシート2の結果が入るため、シート3で計算していないとA3には#N/Aが入っています。) 求めたいのはA1からA12の中で、『1』、『2』、『3』が入っているときには『○』を返し、そうでない時は『 』(空白)を返したいのです。 『1』だけの時は、=IF(COUNTIF(A1:A12,"1"),"○","")で出来たのですが、『2』の時も『3』の時も『○』を返したいのです。 OR関数を組み合わせれば出来そうなのですが、未熟者なので苦戦しております。 よろしくご教授下さい。

  • IF、ORなどの関数について

    ある数値を分類わけする式が作りたいのですが ぜんぜん分かりません。誰か助けてください。 セルA1の値が 100以上ならA、100以下ならBを返す式を下記のように作ってみました。 =IF(OR(A1=100,OR(A1>100,)),"A","B") これに 100以上200以下はCという情報を入れたいのです。 どうやればいいですか?? 誰か教えてください。 困ってます。 これで言ってる意味伝わるのでしょうか?それもとても不安です。。。。

  • IF関数についての質問です。

    IF関数を使って、『もしA1セルが"子"と入力されていれば○を表示、そうでなければ空白を表示する』という式を作りたいと思いますがうまくできません。単に=IF(A1="子","○","")ではダメですよね・・・

  • 一つのセルでIF関数を二つ使いたい

    二つのセルの値を割って、%を表示させるために、三つ目のセルには 「=1-(B1/A1)」を入れていたのですが、そこに、二つのセルが空白の時にはエラー表示にならないようにIF関数を使い、三つ目のセルは 「=IF(ISBLANK(A1),"",(1-(B1/A1)))」 という数式にしました。 その数式にさらに、もし二つのセルの値が「0」の時には、結果を「0%」として表示させたくて、三つ目の数式の中にもうひとつのIF関数を同時に使いたいのですが、 一つのセル内に、IF関数を使って結果をうまく表示させるには、どのような数式にすれば良いでしょうか??

  • EXCEL IF関数 AND、OR条件

    先ほど、以下のような質問をさせて頂き、回答を頂いたものについての、追加の条件を付けた場合についての数式について、ご教授お願いいたします。 ◆以前、質問引用 以下の「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"),"○","×"))) 宜しくお願いいたします。

  • ExcelのIF関数で

    IF関数で質問なんですが、複数条件(アンケートのような物)で、例えばA1:B100の中で、A列が「5」で且つB列が「3」の物を数えなさい。という式で抽出結果を一覧表にしたいのですが、抽出結果が0の場合「0」が表示されてしまい、とても見苦しくなってしまいます。0の場合は空白にしたいのですが悩んだ結果、 =IF(SUM(IF(A1:A100=5,IF(B1:B100=3,1,0),0))=0," ", (SUM(IF(A3:A100=5,IF(B1:B100=3,1,0),0)))) のような長い式になってしまいました。他に良い方法かあるでしょうか? ご教授ください。

専門家に質問してみよう