• ベストアンサー

Excelで条件に一致する数値の合計を求める

日付け列と商品名(商品ID)列と入庫、出庫列を作ったとして、一日に何回にも分かれて同じ商品が入出庫された場合、伝票でその都度入力したとします。後日見て何日に商品ID"何"が合計何個入庫したかをほかのセルに表示したい場合どのような関数を使えばよいのでしょうか?解りずらい質問ですが、ご回答頂きたく御願い致します。

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

  • ベストアンサー
  • ARC
  • ベストアンサー率46% (643/1383)
回答No.6

複数条件で絞り込んで合計したいときは、DSum関数使うと楽です。 A列に日付、Bに商品ID、Cに数量が入っているとします。1行目に列名が入力されていて、2行目からデータが入力されているとします。 まず、適当なセルに検索条件を記述します。 日付 商品ID 4/16 1 (この例では「日付」のセルがG1にくるようにします。) 適当なセルに以下のように記述 =DSum(A1..C1000,3,G1..H2) これで、4/16日の商品IDが1の商品の数量の合計が取得できます。 参考URLのQ&Aも参考になるかも。DCountをDSumと読み替えれば、あとは同様です。 他には「配列数式」を使ったやり方もあります。 配列数式自体は結構ややこしいんですが、ご質問の内容でしたら、 [ツール]-[アドイン]で「条件付き合計ウィザード」を組み込んだ後、 [ツール]-[ウィザード]-[条件付き合計式]を実行することで、簡単に作成することが出来ます。

参考URL:
http://www.okweb.ne.jp/kotaeru.php3?qid=63506
herohero21
質問者

お礼

条件付き合計ウィザードでほぼ望んでいた事が出来ました。こんな事も知らないで、Excelを使っているつもりでいたとは、大変恥ずかしいです。有難う御座いました。

その他の回答 (5)

  • yanmaa
  • ベストアンサー率45% (207/457)
回答No.5

↓さっきの一部訂正:先にオートフィルタを設定しておいてください。

  • yanmaa
  • ベストアンサー率45% (207/457)
回答No.4

SUBTOTALを使いますか Aに日付、BにID、Cに数量とする 2行目から10行目までにデータが有るとします。 C11に式=SUBTOTAL(9,C2:C10)とします。 あとはAとBに対してオートフィルタを設定します。 後は好きな条件でフィルタ値を設定して下さい。 そうするとC11に選択した条件の合計が表示されます。

herohero21
質問者

お礼

有難う御座います。色んな雑誌や参考書(初心者向け)にはSUBTOTALなどと言う、関数は出ていなかったと思います。ますますExcelの奥深さを実感いたしました。(あたりまえですか?)

  • a-kuma
  • ベストアンサー率50% (1122/2211)
回答No.3

複数の条件があると、keronyan さんが書かれた通り、 ピボットテーブルを作るか、マクロを組むしかないですね。 ピボットテーブルを作る程度の操作が許されるのであれば、 オートフィルタも、そこそこ使えます。 シートの全域を指定して、オートフィルタで条件を絞り込んで、 出荷数のセルを範囲指定して、別のシートに貼ります。 で、あらためて、その貼ったものに対して sum() をとる。 面倒ですが、直感的な操作ではあります。

herohero21
質問者

お礼

マクロですか・・・・その言葉だけは聞きたくなかったです。(笑)しかしマクロを使えるようにならないと色んなデーターも紙を置き換えた物になりかねませんね。有難う御座いました。またお願い致します。

  • keronyan
  • ベストアンサー率25% (31/122)
回答No.2

ピボットテーブルを使ってみては出来ないでしょうか。 入力された行の先頭にそれぞれの項目名を付けて、すべてを選択してデータのピボットテーブルを選んでみてください。 それで、行に表示する項目(日付と商品ID)を選択し表示部に個数を選択すると一覧できる表になります。 見るたびに作らないといけませんがいかがでしょうか。

herohero21
質問者

お礼

有難う御座います。当社は私がこんな感じですので、ほかの人間が一目で入出庫状況(結構何日に何が何個出たか?とか言う問い合わせが多いのです。)がわかるように、と思ったのですが。何とかピポットテーブルぐらいは教えようと思います。また御願い致します。

  • a-kuma
  • ベストアンサー率50% (1122/2211)
回答No.1

sumif という関数があります。 商品IDがA列、出荷数がB列にあるときに、 =sumif(a1:a100, "ID-A", b1:b100) とすると、商品IDが "ID-A" の行のB列の数値の合計を返します。

herohero21
質問者

補足

こんなに早く回答が頂けるとは思いませんでした。ありがとう御座います。もう少し補足良いでしょうか?範囲、検索条件を工夫すれば出来るのかと思いますが、"何月何日"に、"ID"何が、"何個"入庫したか?まで抽出する方法はありますか?度々スミマセンが宜しく御願い致します。

関連するQ&A

  • ExcelのVlookup関数の応用について

    ExcelのVlookup関数においての質問です。 画像のような場合において、 どのようにしたら”最終入庫”と”最終出庫”の値を 『導き出したい値』のように引っ張ってこれますでしょうか? (画像では手入力しています) 品目が複数のセルに存在し、入出庫ステータスがバラバラであり、 各入出庫の最新の日付を検索したい場合どのようにしたらよいか お知恵を拝借できますと幸いです。 宜しくお願い致します。

  • EXCELで条件付の計算はできるか

    EXCEL2000を利用しています。 以下のように数値が入っています。    1日  2日  3日 .... 入庫  10   15   3 出庫  8    10     4 入庫  10   15   3 出庫  8    10     4  ・  ・  ・ ------------------------------- 入庫計 出庫計 入庫、出庫の合計を計算式で求めることはできるでしょうか?

  • 全ての列をグループ化したくない時

    いつもお世話になります。 また少し行き詰まったのでご教示よろしくお願いします。 VB.NET2003 + Accese2000 での開発環境です。 いま簡単な倉庫の入出庫管理表を作ろうとしています。 フィールドは (1)入出庫日 (2)入出庫区分(入庫か出庫かの区別) (3)倉庫棚番 (4)品番 (5)ロット (6)数量    ・    ・    ・    ・ こんな感じである時点での集計表を作ろうとしました。 入出庫区分は入庫時には[1]、出庫時には[-1]を入れる様にし、在庫量を出す時には(入庫数量 数量×[1]、出庫数量 数量×[-1])の合計(Sum)で計算しようと考えました。 品番やロット別等でそれぞれ集計しようとしましたが、表示する全ての列でグループ化をする必要があるようで、そうすると入庫の合計、出庫の合計が別々に出てきてしまって、目的とする現在の数量が見えません。 入出庫合計(現在の数量)を品番やロット別に出す場合、どういう風にグループ化すればいいのでしょうか? また単純にSumを使って合計すると言うことは普通しないのでしょうか? 何かヒントをお願いいたします。

  • Excelの条件検索による合計計算

    ExcelでA列に日付、B列に商品名、C列に売上金額を入れて、日々の売上管理をしています。最大でも500行と仮定します。 B列のりんごの合計、みかんの合計など商品ごとの合計を算出したいと考えています。B列の商品ごとの合計です。 この場合には、どの様な関数・数式を使用するのでしょうか? 宜しくお願いいたします。

  • Excel で 複数条件の合計を出したい。。。

    どなたかご存知の方がいたら教えてください!!!(汗) 下記のようなデータがあります。 列は時系列でデータがどんどん増えていきます。 例)A列=1月  1行目=Xの時系列データ   B列=2月  2行目=Yの時系列データ   C列=3月  3行目=Xの時系列データ    ・      4行目=Zの時系列データ    ・   A列のXのデータの合計をしたい場合は、SUMIF関数を 使えばよいと思うのですが・・・ あるセルに○月と入力するとそのセルの日付を参照して、 その月のX条件だけを満たす合計を出す場合にはどのような関数を使えばよいのでしょうか? もしくは、どのように関数を組合せばよいのでしょうか? なかなかうまく説明できなかったのですが、 よろしくお願いします!!!

  • EXCELでの条件付き合計

    EXCELで以下のような表を作成しました。 ・日付の行数はランダムです。 (無い日付もあれば複数行ある日付もあります) ・日付の列,金額の列にはそれぞれ”日付”,”金額”と名前をつけています。 ある日付からある日付までの金額の合計を計算したいと考えています。 SUMIF関数を使用すればできそうだということはわかるのですが, 日付の条件をどのように入力すればいいのかがよくわかりません。 どのように入力すればいいのでしょうか? 日付     金額 12月1日    123     12月15日    962    12月31日     56

  • EXcelの関数の1つの数値を一括で変換する方法

    Excelにて次のような関数を作りました。 {=SUM(IF(入出庫管理!$C$5:$C$153=1,IF(入出庫管理!$D$5:$D$153=1,入出庫管理!$G$5:$G$153,0),0))} 入出庫管理表なるものを作ってそのシートに入力した数値をカレンダーに反映させるものです。 入出庫管理!$C$5:$C$153=1は製品番号、入出庫管理!$D$5:$D$153=1は日付、入出庫管理!$G$5:$G$153,0),0は入庫数です。ここでセル一つ一つに入力するのが面倒なので一月分のセルに最初に記述した関数をコピーした後、製品番号や日付を同時に変換する方法は無いでしょうか?ご教授お願い致します。

  • エクセルで条件に合わせて数字を合計

    エクセルの表にて、 セルに”○”が入っている場合は2、”×”が入っている場合は1で、その結果を合計したいのですが(例:○が3個・×が2個入ったセルがあれば、合計は8というふうに) 入力用と合計用に列を分けて、合計用にIF関数を使って数字を代入し合計するという方法しか思いつきません。VBAなど高度な技術を持ちませんので、やはりこの方法がベストになるのでしょうか? 列を増やさずに出来る方法があればご教授下さい。

  • エクセル 行数の異なる合計範囲

    例えば   A   B   C    D 1 日付 品名  金額  小計 2 3/1  A商品  500  1800 3     B商品  800 4     C商品  500 5 3/2  B商品  500  500 6 3/3   A商品  300  300 というように次の日付が入るまでの合計(日ごとの集計)をD列に出したい場合に何か関数はありますでしょうか。 ちなみに日付ではなく文字列のパターンもあります。

  • Excel 複数登録情報の直近日付を求める

    ■複数回入庫している同一商品の直近出庫日を求める数式を教えてください。  (商品コード別の出入庫経過日数を調べるため)  使用ソフト: Excel2007  【例】   1) 1月1日(B列)に商品コード「A100」が入庫   2) 1月10(E列)に商品コード「A100」を出庫   3) 2月1日(B列)に商品コード「A100」が入庫   4) F列に1月10日を表示   5) G列に経過日数を表示(=30日)  ▼行A1~G1  A列:注文番号  B列:入庫日  C列:商品コード  D列:商品名  E列:出庫日  F列:前回出庫日(出庫無="-")  G列:経過日数=入庫日-出庫日  行1: 注番,入庫日,商品コード,商品名,出庫日,前回出庫日,経過日数  行2: 0001,1/1,A100,"冷蔵庫",1/10,"-","-"  行3: 0002,1/2,B100,"テレビ",1/15,"-","-"  行4: 0003,1/3,C200,"洗濯機",1/25,"-","-"  行5: 0004,2/1,A100,"冷蔵庫",2/5,1/10,30"日"  行6: 0005,2/5,C200,"洗濯機",2/10,1/25,11"日" ●「F列」の日付を自動入力させたいのです。

専門家に質問してみよう