• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:納入明細表から実納入軒数を求める(Excel2000))

納入明細表から実納入件数を求める方法(Excel2000)

このQ&Aのポイント
  • Excel2000の納入明細表から実納入件数を求める方法について教えてください。詳細な集計方法や条件についても教えていただけると助かります。
  • 納入明細表の集計方法についてお聞きしたいです。具体的には、A列の顧客名が複数の品目に納入されている場合、品目ごとに表示される行数が異なることや、12月未納入の場合の取り扱いについてお知りになりたいです。
  • Excel2000の納入明細表で、12月の実納入件数を求める方法について教えてください。また、オートフィルターを使用して特定の条件で抽出した場合に、表示されている行の範囲のみで集計する方法も教えていただきたいです。

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

  • ベストアンサー
  • web2525
  • ベストアンサー率42% (1219/2850)
回答No.1

作業列を利用して良いなら O列以降を作業列として 1行目にタイトルが入っていて2行目以降にデーターが有ると仮定 O2セルに =MATCH($A2,$A$2:$A2,0)*(C2<>0) 横方向Z列までフィル AA2セルに =(MATCH(O2,O$2:O2,0)=ROW()-1)*(C2<>0) 横方向AL列までフィル C列最終行に =SUBTOTAL(109,AA:AA) N列までフィル あまりスマートではないですが、目的の合計が求められます。

matsuisamo
質問者

お礼

ありがとうございました。 指示通りに入力したら出来ました。 ただ当方初心者にていろいろ調べてみたのですが関数の意味が理解できません。 解説頂けるとありがたいのですがお願いできますか?

その他の回答 (1)

  • web2525
  • ベストアンサー率42% (1219/2850)
回答No.2

解説 =MATCH($A2,$A$2:$A2,0)*(C2<>0) ~~~~~~~~~~~ ここでA列の顧客名の重複をチェック、重複した顧客名は全て同じ数字に その後で(C2<>0)を掛けると納入のない行は0に =(MATCH(O2,O$2:O2,0)=ROW()-1)*(C2<>0) ~~~~~~~~~~~~~~~ さらに重複した番号をチェック、これで重複した顧客は1行のみに絞られます。 (C2<>0)この部分は*1でも良いのだけどなんとなくw MATCH関数は(検索値、検索範囲、0)で検索範囲の何番目にその数値があるかを戻り値として返します。 検索は検索値の先頭から行うので、同じ検索値(この場合は顧客名)のものは全て同じ数値、単に重複のチェックだけならROW関数で、戻り値とセルの行数とを比較して検索範囲の最初の戻り値のみ1と表示させて件数チェックも出来ます。 (ROW関数で検索を行う場合は、検索範囲により+-での調整が必要) 今回の場合は、納入無しの場合が有る為、一旦納入があった顧客名を算出した上で、重複チェックを行っています。

matsuisamo
質問者

お礼

大変助かりました。 会社のPCヘルプデスクに質問しても解決していませんでした。

関連するQ&A