- ベストアンサー
Excel関数で複数条件指定時の式を教えてください
- Excelの2003を使用している場合、以下の条件でデータを抽出する関数があります。
- A列に文字または数字が存在し、かつB列にも文字または数字が存在するデータの件数を求める関数。
- A列に文字または数字が存在し、かつB列に「-」が存在するデータの件数を求める関数。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
複数条件に合致する件数をカウントする場合には、SUMPRODUCT関数を使用します。 例えば、A列とB列に、データーが2行目から99行目にかけて存在している場合には、 >(1)A列に文字、数字が存在してB列にも文字、数字が存在するデータの件数を求める。 =SUMPRODUCT((A2:A99<>"")*(B2:B99<>"")) >(2)A列に文字、数字が存在してB列に ー が存在するデータの件数を求める。 =SUMPRODUCT((A2:A99<>"")*(B2:B99="ー")) >(3)A列に - が存在してB列にも ー が存在するデータの件数を求める。 そのための関数は、次の様になります。 =SUMPRODUCT((A2:A99="-")*(B2:B99="ー")) 尚、- と ー は別の文字で、御質問文中の例の中には、- は1個もありませんから、御質問文中の例そのままでは、条件に合う件数は無く、答えは0になります。( - と - も別の文字です) 因みに、A列に ー が存在してB列にも ー が存在するデータの件数を求める関数は、次の様になります。 =SUMPRODUCT((A2:A99="ー")*(B2:B99="ー"))
その他の回答 (1)
- rukuku
- ベストアンサー率42% (401/933)
こんばんは Excel2007ならばCountifs関数がありますが、Excel20032はありません。 そこで、作業列を使います。 (1)ならば、 C2に =IF(ISBLANK(A2),0,1)*IF(ISBLANK(B2),0,1) 以下オートフィル D2に =SUM(C:C) でできます。 (2)は上記の C2に を =IF(ISBLANK(A2),0,1)*IF(B2="ー",1,0) 以下、オートフィルとします。 (3)は =IF(A2="ー",1,0)*IF(B2="ー",1,0) です。
お礼
ご回答ありがとうございます。 オートフィルを使用するという考えはまったく思いつきませんでした。 やってみた所、無事に値が返ってきて解決することが出来ました。 どうもありがとうございました。