• 締切済み

件数取得処理について

countifやAND条件で試してみたのですが、うまくいかないので質問します。 A列 B列 C列 1 りんご01   1 1 りんご01 1 りんご01 2 みかん01 1 2 みかん01 3 りんご02   1 3 りんご02   上のようなデータがあって、件数を取得するのに対して、 =AND(B:B = "りんご*",C:C = 1)と=countif(D:D,true)で 動かしてみましたら、値が0が返ってきてしまいました。 りんご01とりんご02の1のフラグが経っている件数を取得したいと 思っております。 よって件数は2を返したいのですが.. 行も流動的に追加することも想定して関数を作成したいです。 また、みかん*も含めた場合もORか何かでできないかと.. 詳しいかたいましたらレクチャーをお願いします

みんなの回答

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

#4です。#4で言った(3)のDCOUNTは正確にはDCOUNTAでやってみたので載せます。 例データ 第1行目に見出しが必要。 A列  B列   C列 コード 品物 サイン 1 りんご01 1 1 りんご01 1 りんご01 2 みかん01 1 2 みかん01 3 りんご02   1 3 りんご02 ーー 条件は J、K列に 品物 サイン りんご* 1 ーー 何処か空きセルに =DCOUNTA(A1:D8,A1,J1:K2) 結果 2

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

複数条件付き件数カウントは (1)SUMPRODUCT (2)作業列を使う (3)DCOUNT (4)配列数式 などがある。 この質問の場合、ワイルドカード的な該当を求めていたりするのが特徴。 (2)では 例データ A列   B列  C列  D列 1 りんご01 1 1 1 りんご01 1 りんご01 2 みかん01 1 2 みかん01 3 りんご02   1 1 3 りんご02 D1には =IF(AND(NOT(ISERROR(SEARCH("りんご*",B1))),C1=1),1,"") 下方向に式を複写。 結果 上記D列。 件数はD列を合計。 ーーー これを(1)のSUMPRODUCTに変えると =SUMPRODUCT(NOT(ISERROR((SEARCH("りんご*",B1:B7)=1)))*(C1:C7=1)*1) で結果は2 真中の「*」がB列での条件とC列での条件でAND条件を考えたというしるし。 上記式はSEARCHはCOUNTIFで(ISERRORでなくて)1かどうかに置き換えても出来ると思う。

  • wisemac21
  • ベストアンサー率39% (171/429)
回答No.3

#2です、早朝のため寝ぼけていました。 罪滅ぼしに別解 =SUMPRODUCT(NOT(ISERROR(SEARCH("りんご*",A1:A7)))*(B1:B7=1)) みかん*もORでは足し算です =SUMPRODUCT(NOT(ISERROR(SEARCH("りんご*",A1:A7)))*(B1:B7=1))+SUMPRODUCT(NOT(ISERROR(SEARCH("みかん*",A1:A7)))*(B1:B7=1))

  • wisemac21
  • ベストアンサー率39% (171/429)
回答No.2

=SUMIF($A$1:$A$7,"りんご*",$B$1:$B$7) >みかん*も含めた場合もOR =SUMIF($A$1:$A$7,"りんご*",$B$1:$B$7)+SUMIF($A$1:$A$7,"みかん*",$B$1:$B$7)

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

=SUMPRODUCT((LEFT(B1:B7,3)="りんご")*(C1:C7=1))

関連するQ&A