• ベストアンサー

Excelで複数の条件を満たす計算式を教えてください。

Excel関数の計算式について教えてください。 書類の提出の処理と、更新を一覧表にしたいのです。 A列に氏名 B列に書類を提出したかどうか(提出したら○、未提出は空白) C列に書類を処理したかどうか(処理したら×、未処理なら空白) D列に更新できたかどうか(更新したら空白、未更新なら1) このような条件で入力を実施したいのです。 それで、 B列が「○」か空白で、C列が「×」のときはD列は空白表示 B列が「○」か空白で、C列が空白の時にはD列に「1」と表示したい。 この場合、D列に挿入すべき計算式を教えてください。 IF関数でネストすれば多分なんとなかる…と思うのですが、 いろいろ試しましたが、式がエラーを起こしてしまいます。 わかる方には簡単なことだろうと思いますが、どうぞお助けください。 よろしくお願いします。

noname#110682
noname#110682

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

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

こんばんは! すでに回答は出ていますが・・・ 単純に考えて、C列が空白の時だけ1を表示させるようになるように思えます。 (B列は空白であろうと、○であろうと条件には関係ないように思われます。) 結論として D列=IF(C2="",1,"") だけでOKかと思います。 しかし悩まれているということはこんな単純なことではないかも知れませんね。 以上、参考になれば幸いです。m(__)m

noname#110682
質問者

お礼

ありがとうございました。無事解決しました! どうも条件に惑わされていたようで… もっと単純に考えてみればよかったんですね。

その他の回答 (2)

  • Hachi5592
  • ベストアンサー率36% (252/698)
回答No.2

明示された条件だけでしたら、 Dにはいる式の条件に 「B列が「○」か空白で」は意味のないものですね。 従って、Dに入る式は以下になります。 =IF(C2="×","",1) 上記は、貴殿の明示した値以外がB,Cに入らないという条件です。 また、Dが空白の時に入る値が数字の1の場合が上記です。 全角の「1」の場合は、式の「1」を「"1"」にします。

noname#110682
質問者

お礼

ありがとうございました。 B列、C列には明示した値以外は入りません。 解決してみれば何を悩んでいたんだろうと思います。 あと値ですが、半角の数字を値として返すときはダブルコーテーション要らないんですね。 今まで半角も律儀にダブルコーテーションつけてました。

  • Tasuke22
  • ベストアンサー率33% (1799/5383)
回答No.1

複数の条件はANDとかORを組合わせます。 しかし、今回の条件をよく見てください。 B列に何が入っていてもD列に影響していません。 C列が×か空白かだけを調べればいいです。 =IF(C2="×","",1)

noname#110682
質問者

お礼

ありがとうございました。 そうですね。条件に見事に惑わされていました。 B列がなんだろうが結果D列には影響してないんですね。 C列に対してのIFをもってくればよかったんですね。 この計算式で無事に解決できました。

関連するQ&A

  • エクセルのIF関数で複数の条件を指定する方法

    エクセルのIF関数で複数の条件を併記する記載方法がわかりません。 例えば、A列に苗字、B列に名前が入っている(どちらかが空白の場合もある)とします。 その場合に、苗字と名前両方が入力されている場合にのみC列に氏名を表示し、どちらかの条件が偽の時は何も表示しない関数を入れたいです。 具体的に以下のような関数を考えてみましたがこれはエラーになります =IF(ISBLANK(A1) | ISBLANK(B1),"",CONCATENATE(A1,B1)) "|"の辺りが違うようなので"||"とか"OR"とかやってみましたがうまくいきません。どう記述すればよいでしょうか。 ちなみに、IF文のなかに別のIF文をネストして同じ事をやる方法ならわかるのですがこれはなんとなく好きではありません。上記のような記載の仕方でできれば教えて欲しいです。

  • エクセル 複数条件

    教えてください!!    A列  B列  C列 1  済   B   100   2       A   200 3       B   100  4  済    A   200 5       C   100 A列が空白で、B列に「A」と「B」が入力されている、C列の合計を求める関数がわかりません。 B列にAとBが入力されているC列の合計は「=SUMIF(A1:A5,"A",C1:C5)+SUMIF(A1:A5,"B",C1:C5)] で求めることができました。この条件に「A列が空白(未入力)」の場合という条件を加えたいのです。 関数覚えたてなので解りやすく教えていただければありがたいです。 よろしくお願いします。

  • Excelの関数を複数まとめて

    Excelの関数のまとめ方について質問させてください。 A列   B列        C列 1    10 2    11 3    12 1    10 1 11 3 空白値(値なし) A列が1で且つB列が10の場合はC列にaと表示 A列が1で且つB列が11の場合にはC列にbと表示 A列が3で且つB列が空白(スペース)の場合はC列にcと表示 条件に合致しない場合は、B列の値をそのまま表示 というような複数条件判定の関数を一列内に纏めて計算させる場合には どのようにすればよいのでしょうか? ご教授の程宜しくお願い致します。

  • 【エクセル】 条件を満たした値の計算

    いつもお世話になっております。   A列  B列  C列 1  あ   A   a 2  い   B   b  3  い   C   c 4  あ   D   d ・  ・   ・   ・ ・  ・   ・   ・ ・  ・   ・   ・ A列が『あ』の行のB列・C列の値を使って、  (A×a+D×d)/(a+d)  (4行以降も『あ』があります) 上記のような計算をしたいのですが、 どのように関数を使ったらよいか分かりません。教えていただけないでしょうか。 どうぞ宜しくお願い致します。    

  • エクセルの関数でセルの合計を求めたい(条件付) 

    関数で   A B C  1 ○ 1 2 × × 3 ○ 3 4 × × 5 × × 6 ○ 2    ※ ×は空白です。 A行がが○だった時、B列の数字と一つ下の○の行のB列の数字の合計をC行に求めたいと思っています。 例えばC1には4、C3には5と言った感じです。 IF関数をネストしようと思ったのですが、×が10個以上続く場合がありネストできませんでした。 お知恵を拝借させてください。 よろしくお願いします。 関数では難しい場合はVBAでも結構です。

  • エクセル2007の計算について

    エクセル2007の計算についてですが、A列に100個データがあり、B列とC列にそれぞれ1個データがあるとします。そこで、D列のD1にA1*B1-C1の計算結果を表示させました。次に、D2以下も同様の計算をするために、D1のセルを選択して、矢印無しの十字キーを下に伸ばしてD2にA2*B1-C1、D3にA3*B1-C1・・・、D100にA100*B1-C1の結果を表示させようとすると、100個分の計算結果は表示できるのですが、D2はA2*B2-C2、D3はA3*B3-C3・・・というように、B列とC列も一つずつ下がって計算されてしまいます。この場合、B列とC列には1個しかデータがない(B1に一個、C1に一個)ため、D2以下の計算結果は0になります。B列とC列を下げずに、A列のデータだけ下げて連続計算するにはどうすればよろしいでしょうか。

  • エクセルにおける複数条件の関数について

    下記の内容を別シートに集計したいのですが、 関数が間違えているのかうまく数値が表示されません。 Aシートに以下の情報が入っています。 Cの列、C5からC54までの範囲に1から100の間で数字が入っています。 Dの列、D5からD54までの範囲に2013/6/1から2013/7/15までの日付が入っています。 例:C5に2と入っていて、D5に2016/6/3と入力されていれば該当し、 C5の2という値を別シートにその他のC列とあわせて合計を表示されるようにしたいです。 表示をさせたいBシートには、 D列のD5からD54範囲内の6月分(2014/6/1から2014/6/30まで)で、 C列に入力されている数値の合計を1つのセルに表示させたいです。 この場合の関数をお伺いしたい内容になります。 今、うまくいかない関数は、以下のような内容です。 =SUMPRODUCT(('201406'!$C$5:$C$54="○")*('201406'!$BW$5:$BW$54>="2014/6/1"*1)*('201406'!$BW$5:$BW$54<"2014/7/1"*1)) これだと、C列に○が入っていれば、その合計を表示できると思いますが、 1や5などの数字の合計を表示させるには・・で、困っています。 アドバイスいただけたらと思います。 ※関数をそのまま入力いたいと思っていますので、 返信は、関数でアドバイスいただけたら幸いです。 宜しくお願い致します。

  • Excelで勤務時間の計算をしたいです。

    すでに作られている勤務表を前任者から受け継ぎましたが、 すべて手入力しているので関数を使ってもっと効率化を図りたいと思います。 皆様の知恵をお貸し下さい。 出勤時間→B列 退社時間→C列 出勤日数のカウント→D列 残業時間→E列 条件として ・定時は8:00~17:00に対して1時間の休憩をとる。 例:B列   C列  D列  E列   8:00 17:00  1  [空白] ・実働時間9時間を超える場合は残業時間に入れる 例:B列   C列  D列  E列   8:00 18:30  1   1.5 ・実働時間9時間以上の場合は1時間休憩を差し引き実働時間8時間としてそれに対して 出勤日数のカウント「1」 実働時間4時間以下の場合は休憩時間を差し引かずに 出勤日数のカウント「0.5」 実働時間4時間超え、9時間未満のものに対しては休憩時間に関係なく 出勤日数のカウント「1」 (ここが一番厄介な点かと思われます。4時間以内ならカウント0.5、4時間を越えたものはカウント1です。) 例:B列   C列  D列  E列   8:00 12:00  0.5  [空白]   8:00 15:00  1  [空白]   8:00 17:30  1   0.5 ・深夜勤務もあるが、その場合の残業は手動で計算するので、出勤日数のカウントだけでOK 例:B列   C列  D列  E列  23:00  5:00  1  [空白] このような状態なのですが、計算の列などを増やして(あまり増やしたくはないのですが・・・) 関数をいれてある程度自動で計算をさせたいのです。 休憩時間はほぼ1時間と決まっているのであまり列は増やさずに計算させたいです。 簡単な関数は知っていますが、表示形式など詳しいことは分かりません(残業時間1時間半を1.5と表示するなど・・・) ちなみに出勤日数のカウント、残業に関しては1や1.5などの数値を 他の時給計算で使っています。 巧く説明できなくてすみません((汗)) どのような関数を組んだらよいか、ご指導を宜しくお願いします_(._.)_

  • エクセルの複数条件に一致したセルを抽出したいのですが、関数で教えてくだ

    エクセルの複数条件に一致したセルを抽出したいのですが、関数で教えてください。                A列   B列    C列 Aファイルには 行 【注文月日】、【氏名】、【商品金額】が記入されています。 Bファイルには 行 【注文月日】、【氏名】、【税金額】が記入されています。 AファイルのD列に、Aファイルの【注文月日】かつ【氏名】がBファイルの【注文月日】かつ【氏名】と一致する場合のBファイルC列の【税金額】を表示したいのです。 VLOOKUP関数では条件が1つだけなので使用できませんが、似たような関数で複数条件ができる関数があるなら教えてください。

  • エクセルVBAでのまとめ計算

     初めまして、よろしくお願いします。 データーで    A      B     C     D      E ・・・ 1              5     7      2 2              3     7      0 3 4              6     3      6 5              2     8      3 6              0     3      4 ・     ・      ・      ・      ・ ・     ・      ・      ・      ・ 100             3     4      5 という表がありますA列には(C列の値/(D列以降の平均値))をB列には(C列の値-(D列以降の平均値))を表示させたいと思います。たまに3行のような空白の行があります。関数式ではなく、VBAで解る方、よろしくお願いします。

専門家に質問してみよう