『条件付き検索』(こうき) Excel2007 A1〜A30に 1と表示されてるセルで、その隣のB1〜B30に Aと表示 される数を計算する方法を教えて下さい。 ---- Excel2007から登場した新しい関数である COUNTIFS関数を試してみてください。 (ていおう)2009/11/25 21:04 ---- 横から失礼します。 何回となくお世話になっている者です。 初歩的なことで恥ずかしく、過去ログで検索すればよろしいとお叱りを受けそうですが、 (ていおう)さんの示された関数を使用して =COUNTIFS(A1:A30,"=1",B1:B30,"=A") で解決しますが、 Excel2007以前のバージョンではこの問題に対応することは 不可能でしょうか? たとえば COUNTIF関数を使用して実現する方法はないのでしょうか。? (あらくま) ---- 入力されているのが1なんだから、Sumifでも良いんじゃないかと。 =SUMIF(B1:B10,"=A",A1:A10) おまけ =SUMPRODUCT((A1:A10=1)*(B1:B10="A")) BJ ---- BJさん、ご教示ありがとうございました。 返答の遅れたことお詫びします。 SUMPRODUCT関数で問題なく、処理されました。 SUMIF関数では、A列セルに1が入力されているときは、隣接するB列セルには 必ずAと入力されているという条件のもとでということになりますね。 質問者のこうきさんがA列セルに1が入力されていても、隣接するB列セルに は必ずAが入力されているとは限らないということも含めているのであれば、 ていおうさんが示されたCOUNTIFS関数、またはBJさんが示されたSUMPRODUCT関数 で対応ということですね。 考え方の柔軟性が必要だということを、またもや知ることになりました。 (あらくま) ---- 遅くなりました。  ていおうさん、あらくまさん、BJさん  ありがとうございました。 ---- こうきさん、私が記載した前コメントの「ていおうさんが示された COUNTIF関数」を「ていおうさんが示されたCOUNTIFS関数」に訂正 しておきました。 打ち落としで"S"が落ちていました。 (あらくま) ---- >SUMIF関数では、A列セルに1が入力されているときは、隣接するB列セルには >必ずAと入力されているという条件のもとでということになりますね。 何だか順番が逆な気がします。 >入力されているのが1なんだから が条件なので  B列に「A」と入っている行の、A列には 1以外の値が入力されてない事 になると思います。 例1 [A] [B] 例2 [A] [B] [1] 1 A [1] 1 A [2] [2] [3] B A [3] 2 A [4] [4] [5] A [5] A [6] [6] 例1はOK で、例2はNG です。  A列には1以外の値が入ることもあり、  その行のB列に Aが入力されている場合その行はカウントしない のなら、 COUNTIFS関数やSUMPRODUCT関数等を使う事に成ると思います。 ニュアンスが違うだけなら良いですが。 ちなみに =COUNTIFS(A1:A30,"=1",B1:B30,"=A") この辺の「=」は ~ ~ 不要に思います。 (HANA)