Excel2007のIF関数について教えてください

このQ&Aのポイント
  • Excel2007のIF関数を使って、複数の条件をまとめて数値を表示する方法を教えてください。
  • データを抽出している中で、未処理の件数を管理したいですが、キャンセル扱いの条件を除いて数値を表示する方法がわかりません。
  • IF関数でなくても構いませんが、未処理(キャンセル扱い除く)の条件を満たす数字を表示させる方法を教えてください。
回答を見る
  • ベストアンサー

エクセル2007 IF関数について教えてください

お世話になります。 どうしてもIF関数がうまくできず困りはてています。 下記のような項目を含むデータを2万件くらい抽出しています。 A列     B列  C列      D列 E列 状況    拒否理由       注文数   確認数 (1) 在庫不足   入力ミス  1     0 → キャンセル (2) 在庫不足       1      0 → 未処理 (3)                 5        0 → 未処理 (4)                 1       1 → 処理済 (5)   お客様キャンセル      10    0     →     キャンセル 未処理の件数を管理したいのですが、キャンセル扱いとなる条件を除く IF関数をうまく作成できません。 =IF(AND(D2>0,E5>0),"完了","未処理") といったように1個の条件についてはなんとかできるのですが、 B列が空欄or文字の入力有、C列が空欄、E列が0の数字の場合、D列の 数字を表示しなさい、といったようにまとめて、条件式をつくることができません。 何個かつなげると、TRUE、FALSEと表示され指定する列の(この場合D列)数字が表示 できません。 IF関数でなくてもよいのですが、未処理(キャンセル扱い除く)条件のみの数字を表示させる 方法をご教示お願いいたします。

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

  • ベストアンサー
  • keithin
  • ベストアンサー率66% (5278/7940)
回答No.1

こんばんは。 たぶんこんな事がやりたいのでしょうか。 =IF(D2=0,"",IF(C2<>"","キャンセル",IF(E2=0,"未処理",D2))) 1.注文数に記入が無ければ、そもそも何もない 2.C列に記入があればキャンセル 3.E列がゼロの間は未処理 4.E列が記入されたらD2の値 #参考 あなたが挙げた条件のうち、 >B列が空欄or文字の入力有 については、「それ以外の状態が無い」ので条件になっていません(常に成立している、という意味です)。 他の条件について整理すると、要するにアナタがヤリタイ事は ○C列が空欄で かつ ○E列がゼロで かつ ○D列に数字が記入されている ときにD列の数字を表示したい それ以外の状況では、何を表示したいのか不明です。

shironekochann
質問者

補足

こんばんは。 お世話になります。早速の回答ありがとうございます。 >B列が空欄or文字の入力有 については、「それ以外の状態が無い」ので条件になっていません(常に成立している、という意味です)。 ⇒ご指摘の通りです。希望する条件を満たそうと思い、条件として成立していないものも条件として 考えていました。 未処理を”未処理"と表示させたいのではなく、D列の数字を表示させたかったので、 下記のようにさせてさせて頂いたら、上手くできました。 =IF(D2=0,"",IF(C2<>"","キャンセル",IF(E2=0,D2,0))) 遅い時間にもかかわらず、ご教示、ありがとうございました。m(_ _)m

関連するQ&A

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

    エクセルIF関数について エクセルのIF関数を利用して、重複するデータを抽出したいと思っています。 エクセルのIF関数を利用したことがないため、別の対応策があれば そちらも教えていただけませんでしょうか・・ 宜しくお願いいたします。 下記のようにA列に入っている1,2,3,4,5があり重複しているものをD列に一つにまとめ重複している1、5の合計分と重複していないものをEに表示させたいと思っています。     A  B     D   E 1  1  123    1  249 2  1  3      2  3 3  1  123    3  345 4  2  3      4  234 5  3  345    5  1665   6  4  234     7  5  555 8  5  555 9  5  555 D1、E1にはどのような関数で対応するのが適しているのでしょうか?

  • エクセルのif関数のエラー

    エクセルでif関数を使ってデータ処理をしたのですが、上手くいき ません。何がおかしいのかが分からない状態で困っています。 状況  A B C D E 1 : + = ? 関数式 とセルに入力してあるとします。(A1=:,B1=+,C1==,D1=?) 関数式のセルに以下の様に入力しました。 =IF(ISBRANK(D1)=TRUE,E1="",VLOOKUP(D1,$A$1$B$15,2,FALSE)) 目的はVLOOKUPだけではD1が空白の時にE1にNAMEと表示されるのを 避ける事でした。 そうすうとD1にA列の数字を入力すると、それに対するB列をE1に 表示するようになるのですが、D1が空白の時はB1が表示されて しまってます。  また一旦D1に入力した後、D1をデリートして空白にしてもE1には もとの数値がそのまま表示されたままになってしまいます。 文章で表現している分、かなり分かりにくい説明になってしまって いますが、お詳しい方いましたらアドバイスお願い致します。

  • Excel 長すぎるif関数

    こんにちは。Excelを使って、条件によって表す表示を変える場合、 例えばa1のセルには0~100までの任意の数字を入れるとして、b1のセルにa1の数字に応じていろいろな表示をしたい場合(具体的には100ならAを表示、90~99ならB、70~89ならC、55~69ならD・・・といったように)、if関数を使うと思いますが、 =if(a1=100,"A"1,if(a1>=90,"B",if(a1>=70,"C",if・・・・)))というように長々と続きますね。条件が少ないうちはいいのですが、条件が多くなると、大変複雑な式になり、入力もしづらいし、頭も使うし、閉じる括弧の数もわからなくなるし、作成に時間もかかりますよね。2つ以上の条件が重なる(例えばA1が90~99の範囲でかつa2がAならb1にB1と表示するなど)など複雑になってくるともうお手上げです。 これらを短時間で要領よく作成する方法はないでしょうか?次の観点で教えてください。 1 if以外の良い関数はあるか?または良い機能はあるか?それとも複雑であってもif関数が妥当なのか? 2 (if関数が妥当であるとして)複雑なif文の作成を簡単にできる方法があるか?あるいはそんなソフトがあるか? 3 やっぱりそういうのはVBAとかで作った方がいいのか?(できれば使いたくないのですが。)

  • IF関数条件式について教えてください

    IF関数を使ってどのように計算式を組んだらよいのか悩んでいます。 D列の数字がE列に満たない場合、E列を満たすためにG列を何回増やせばE列を超える数字になるのかをB列に表示させたいです。 どなたか計算方法を教えていただければ大変ありがたいです。 (画像添付を参照してください)

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

    いつもお世話になります。 エクセルのIF関数について教えてください。 Aシートを入力用のシートとして使用し、別のシートに上記のIF関数を使いたいと思っています。 (1)AシートのAF15番地に数字があればその数字を返し、空欄であれば0を返す。  なおAF15番は元々は空欄で、数字を入れる場合は入力者は手動で数字を入れます。 (2)AシートのR26番地に※があれば1を返し、空欄であれば0を返す。  なおR26番地にはプルダウンリストをあらかじめ作成してあり、※か空欄かの2択になっています。 (3) 上記の(1)と(2)の合計値を別のシートのセルに返す。 【例1】AF15番地に3と入力して、R26番地は※を選択  ⇒ 4と表示 【例2】AF15番地は空欄のままで、R26番地は※を選択  ⇒ 1と表示 【例3】AF15番地に1と入力して、R26番地は空欄を選択 ⇒ 1と表示 【例4】AF15番地が空欄のままで、R26番地は空欄を選択 ⇒ 0と表示 私は、このように作ってみたのですが、エラーが出てしまいます。  =(IF(Aシート!AF15="","0",Aシート!AF15))+(IF(Aシート!R26="※","1","0")) エラーの原因を教えていただけると大変助かります。 なお(1)同士のIF関数の組み合わせは問題なく動作しました。 よろしくお願いします。

  • エクセル IF関数 初心者です。。

    A    B   C  D Aさん 9:00  1  9:00 Bさん 10:00 2  9:30 Cさん 11:00 3  10:00 Dさん 12:00 4  10:30 Eさん 9:00  1  9:00 A列氏名 B列時間 C列 B列IF関数 9:00からは1、10時からは2、 11からは3・・・ D列はC列のVLOOKUP関数 1=9:00、2=9:30、3=10:00・・・ そこでお聞きしたいのですが・・ A    B   C  D Aさん 9:00  1  9:00 Bさん 10:00 3  10:00 Cさん 11:00 4  10:30 Dさん 12:00 5  11:00 Eさん 9:00  2  9:30 IF関数を用いて IF(B1>=0.375),1,if(B1>=0.416666666666667),2,IF(B1>=0.458333333333333),3・・・ Eさんが2になるような数式がわかりません。 よろしくお願いします。。

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

    エクセルのIF関数について質問をさせて頂きます。 現在、下記のような条件で抽出できる式を考えているのですが、 中々思うような式が思い浮かびません。 例えば、     A列  B列  C列  D列 1行目  111 2行目  222 3行目  333 4行目  444 5行目  555 6行目  666 7行目  777 8行目  888 9行目  999 上記のようなシートがあったとして、     A列  B列  C列  D列 1行目  111       999 2行目  222       333 3行目  333   ○   123   × 4行目  444 5行目  555 6行目  666 7行目  777 8行目  888 9行目  999   ○ 上記のように、例として C列の1行目に「999」と入力した場合、A列の9行目に「999」の数字があるので、その横のB列に「○」 C列の2行目に「333」と入力した場合、A列の3行目に「333」の数字があるので、その横のB列に「○」 C列の3行目に「123」と入力した場合、どこにも該当番号がないので、入力したC列の横、即ちD列の3行目に「×」を表示 要は、A列のどこかに該当数字があった場合にはその数字の横(B列)に「○」、どこにも該当数字が無い時には、入力した数字の横、D列に「×」を表示するような数式を考えています。 IF関数を使えばできるような気がするのですが、色々と試してみても中々うまくいきません。 下手な説明で分かり辛いかもしれませんが、どなたかご存知の方がいましたら、ご教授の程頂ければ幸いです。 どうぞ宜しくお願い致します。

  • IF関数で教えてください。

     よろしくお願いします。  C4、E4、D4ともにランダムに変化する数字があります。  IF関数で =IF(C4=E4,D4,"")  の場合、C4=E4ならばD4が表示されました。その後C4=E4でなくなった場合、空白になるのですが、空白にならず、変化前のD4の数字のままであるやり方はないのでしょうか、よろしくお願いします。

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

    =IF(E19>=100000,E19-100000,0) この関数式が入力されているセルはE19のセルが10万以上の場合10万を引いた数が表示されますが、例えばE19のセルが178000の場合、78000というように表示されます。ところが、千単位以下を全部0000表示し万単位以上の数字だけを表示させる場合どのような関数式になるのでしょうか?例えば、E19のセルが178000の場合、70000という具合にです。わかる方ぜひ教えてください。よろしくお願いします。

  • EXCEL 空欄の時は空欄にする方法

    EXCEL よろしくお願いします。 d8~d100までこれからいろいろなデータが入ってきます。 今は空欄です。 E8~E100まで既に計算式が入っていますので数字が出ています。 E8に数字が入っていますが D8が空欄の時はE8を空欄にしたいのですが IF関数ですか。よくわかりませんが、E列を空欄にする方法を教えてください。よろしくお願いします。

専門家に質問してみよう