• ベストアンサー

SUMPRODUCT関数の日付関数で困っています

SUMPRODUCT関数でコードが一緒で月も一緒のものについて集計したいと思っています。 添付の写真の【実績】の表は、販売した実績です。 【集計】はそれぞれのコード(商品)の月ごとの集計をしたものです。 集計の"201401"というのは表示形式を変えて日を変えて表示していますが、もとは "2014/1/1"とその月の初めの日を入力しています。 質問の本題ですが、コードが同じで、【実績】の販売日の“年月”と【集計】の年月が同じものを 集計させるには日付をどのようにすればいいでしょうか?

  • wait4u
  • お礼率45% (619/1365)

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

  • ベストアンサー
  • tom04
  • ベストアンサー率49% (2537/5117)
回答No.1

こんばんは! 画像の配置の場合はC3セルに =SUMPRODUCT(($A$11:$A$14=$A3)*(MONTH($C$11:$C$14)=MONTH(C$2)),$D$11:$D$14) という数式を入れ列・行方向にフィルハンドルでコピーしてみてください。 ※ 実績のデータが複数年に渡って存在する場合は もう一つ条件に「年」を加えて =SUMPRODUCT(($A$11:$A$14=$A3)*(YEAR($C$11:$C$14)=YEAR(C$2))*(MONTH($C$11:$C$14)=MONTH(C$2)),$D$11:$D$14) といった感じにしてやります。m(_ _)m

その他の回答 (4)

  • mshr1962
  • ベストアンサー率39% (7418/18948)
回答No.5

C3=SUMPRODUCT(($D$11:$D$14)*(TEXT($C$11:$C$14,"yyyymm")=TEXT(C$2,"yyyymm"))*($A$11:$A$14=$A3))

  • tom04
  • ベストアンサー率49% (2537/5117)
回答No.4

No.1です。 たびたびごめんなさい。 他の方の回答を拝見して・・・ C3セルは =SUMIFS($D$11:$D$14,$A$11:$A$14,$A3,$C$11:$C$14,">="&C$2,$C$11:$C$14,"<"&EDATE(C$2,1)) としても大丈夫だと思います。 ※ 複数年データでも問題ありません。m(_ _)m

  • bunjii
  • ベストアンサー率43% (3589/8248)
回答No.3

Excel 2007以降のバージョンであればSUMIFS関数の方が考え易いと思います。 C3=SUMIFS($D$11:$D$14,$A$11:$A$14,$A3,$B$11:$B$14,$B3,$C$11:$C$14,">="&C2,$C$11:$C$14,"<"&D$2) 但し、E2へは2014/3/1と入力されていることが必要です。

noname#204879
noname#204879
回答No.2

C3: =SUMPRODUCT(($A$11:$A$14=$A3)*($C$11:$C$14>=C$2)*($C$11:$C$14<=EOMONTH(C$2,0))*($D$11:$D$14))

関連するQ&A

  • SUMPRODUCT 複数条件と日付

    関数初心者です。Excel2000を使用しています。 SUMPRODUCT関数を使って複数条件の集計をしたいのですが、どうしても日付の列に反応してくれません。 おそらく原因はデータ元となる日付に時間まで入っているからではないかと思っています。 日付が入力されているセルのデータは 例) 2012/3/3 12:10:50 → セルの書式設定は 時刻のみ 12:10:50 集計したいのは複数条件 例) 2012/3/3 12:10:50 りんご 50  日付 と 商品名 を条件とし 数値 の合計を出したいです。 秒単位で時間計測しているのでこのデータ自体の変更と書式設定の変更は出来ません。 =SUMPRODUCT((B6:B12=B3)*(C6:C12=C3),(D6:D12)) B3のセルに「3/3」もしくは「2012/03/03」の入力で拾えるようにしたくて、 過去のの質問など参考にし(B6:B12=B3)の部分を変更しましたが、うまくいきませんでした。 やってみたことが的外れだったのかもしれません。 また、日付を条件とした場合、書式設定も影響されるのでしょうか? アドバイスをよろしくお願いします。

  • SUMPRODUCT関数について

    よろしくお願いいたします。EXCEL2013使用です。 上の画像、出張者リスト(名前、出発日、帰国日)から、別のシートに一目でわかる一覧表を作りたいのです。例えば、11/06-11/15まで出張だったとしたら、下の表で6日から15日までを黄色背景にする、等です。 下の表で、日付セルの下の各セルに次のような関数を入力しましたがうまく動作しません。 =SUMPRODUCT((リスト!$B$2:$B$300=$A4)*(INT(リスト!$C$2:$C$300)>=INT(B$2))*(INT(リスト!$D$2:$D$300)<=INT(B$2))) ※下の画像は12月ですが、その上に11月があり、上記関数内のセルのアドレスが間違っている訳ではありません。 SUMPRODUCT関数は大変便利なのでこれまで多用してきましたが、今回は完全に頓挫してしまいました。 どこがいけないのでしょうか。おわかりの方、是非ご教示下さいませ。 どうぞよろしくお願いいたします。

  • SUMPRODUCT関数の検索範囲について

     私は公共施設に勤めているPC超初心者で、今、エクセル2000を使って日々提出される施設利用申請書の内容を集計するシステムを作ろうとしています。  申請日が○○年△△月◇◇日の場合、表の日付欄に○○△△◇◇、利用室名や時間帯などを数値化して入力・蓄積し、別シートに集計したいことがらの集計表を作成しておいて、集計の際に任意の期間を設定すれば、その表に自動的に集計されるようにしたいのです。  そこで、SUMPRODUCT関数の出番なのですが、検索範囲になる最初のデータ行は超初心者の私でもわかるのですが、最後のデータ行を指定するにあたって入力済の最後のデータ行が指定されるようにする方法はないでしょうか。  ご教示の程、よろしくお願いします。

  • SUMPRODUCT関数で困っています

    エクセル2007にて、SUMPRODUCT関数を使ってデータ集計をしたいが 下記の現象で困っています。 SUMPRODUCTの特徴として参照先(sheet1)の指定範囲 「($B$2:$E$6)の範囲を($B$2:$G$20)」を変更すると SUMPRODUCT関数がn/aになり値が表示できない。 (やりたいこと) sheet1に元データが入力されています。    A    B    C    D    E 1 NO 社名 商品 購入日 金額 2 01 A商事 肉 1/3 50円 3 02 B電気 野菜 1/10 70円 4 02 B電気 肉 1/12 50円 5 03 C工業 魚 1/20 60円 6 03 C工業 肉 1/30 50円 sheet2はsheet1より必要なデータを、NOをキーにして、 社名・商品・金額を VLOOKUP関数にて取ってきて表示しています。    A    B    C    D    E 1 NO 社名 商品 金額 2 01 A商事 肉 50円 3 02 B電気 野菜 70円 4 02 B電気 肉 50円 5 03 C工業 魚 60円 6 03 C工業 肉 50円 6 03 C工業 鉄 90円 sheet3はsheet2より必要なデータを、NOをキーにしてSUMPRODUCT関数にて取ってきて表示しています。 次の式をB1に入力しています (=SUMPRODUCT((sheet2!$A$2:$A$6=A2)*(sheet2!$B$2:$B$6=B2<>"鉄")*(sheet2!$D$2:$D$6=D2))    A    B    C    D    E 1 NO 金額 2 01 50円 3 02 120円 4 03 110円 sheet3はsheet2より必要なデータを、NOをキーにしてSUMPRODUCT関数にて取ってきて表示しています。 次の式をB1に入力しています (=SUMPRODUCT((sheet2!$A$2:$A$6=A2)*(sheet2!$B$2:$B$6=B2"鉄")*(sheet2!$D$2:$D$6=D2))    A    B    C    D    E 1 NO 金額 2 03 90円

  • SUMPRODUCT関数で複数条件適用されない

    Sheet1 A列:日付 B列:注文番号 C列:品名 D列:整理番号 E列:数量 集計 A列:品名 B~AF列:日付(1~31日) 【集計】B~AF列の日付、A列の品名が 【Sheet1】A列の日付、C列の品名と一致したら 【Sheet1】E列の数量を【集計】の該当するセルに抽出する 式をSUMPRODUCT関数で作成しました。 例)10/1 りんご 20 【集計】B3セルに以下の数式を入れましたが なぜか数量が「0」のままになります。 =SUMPRODUCT('Sheet1'!$A$3:$A$200='集計'!B$2)*('Sheet1'!$C$3:$C$200="りん ご")*('Sheet1'!$E$3:$E$200) 特に数式のミスはないと思うのですが どうしても正しい値が入りません。 数式に間違いがあればご指摘いただけませんでしょうか。 また、他に良き方法があればご教示いただけるとありがたいです。

  • SUMPRODUCTでしょうか?

    A列 B列 C列 名 目標 実績 いちご 100 123 ぶどう 120 115 みかん 110 130 ばなな 110 120 人数 上記の表があり、実績(C列)が目標(B列)を上回った人数を関数を使ってカウントして、人数欄に表示したいです。 どのように求めたらいいのでしょうか? SUMPRODUCT関数かCOUNTIF関数かなと思ったのですが、どのように作成すればいいのかわかりません。 教えて下さい。よろしくお願いします。

  • エクセル SUMPRODUCT関数について教えてください

    エクセルで作成した表から ○○かつ●●のデータ個数を求めたく、 SUMPRODUCT関数を こちらで調べておりましたが どうしても解決しない部分があります。 どうぞ よろしくお願いいたします。 下記8桁数字は、日付です。 カウントしたい数は、B列(終了)が、A1セルに入力された年月かつ、区分(C列)が「A」の数です。 =SUMPRODUCT((LEFT(B2:B100,6)=A1)*(C2:C100="A")) こちらで、『B列=A1セル かつ C列="A"』のみのカウントは出来たのですが、 終了延長(D列)が空欄でない場合は、D列日付データの方をカウントする。 早期終了(E列)が空欄でない場合は、D列・B列よりも E列を優先し、カウントする。という条件を付けたいのですが、 Sheet1 A1セルに「200810(数を調べたい年月を入力)」 (開始)  (終了)     (区分)  (終了延長)  (早期終了)  A列     B列      C列     D列      E列 20061001   20081001   A    -        - 20070926   20081020   A    -        - 20071102   20081009   A    20081201    - 20080101   20081013   B    -        - 20080208   20081010   A    -        20080210 ・・・ この場合、「2」となるようにです。 IF、OR関数あたりかな と考えておりますが、SUMPRODUCT関数のどの部分で条件付ければ良いか解りません。 説明下手で大変申し訳ございませんが、ご助力いただければ幸いです。 

  • エクセル関数使って集計したいです。

    エクセル関数使って集計したいです。 ある調査結果をもとに集計したいい表です。     20歳未満   ~30歳未満 ~40歳未満 40歳以上 1.とても良い    2.良い 3.どちらともいえない 4.悪い 5.とても悪い これに関数を使いたいのですが、SUMPRODUCTやCOUNTを使ってもエラーになってしまいます。 どうしたらいいか教えてください。

  • Excelで日付をテキスト化するには?

    教えてください。 セルに入力された日付データの年月をテキスト化するうまい方法ってありますか?left関数だとうまく年月を抜き出せなくて。 ちなみに年月を使用した月単位の集計のピボットテーブルを作成したいと思ってます。 (だから年月はテキスト形式) 方法はなんでもありありです。 (他にうまい方法ありますか?) よろしくお願いします。

  • Excelの関数に日付を指定する方法を教えてください。

    他のExcelのファイルからデータをリンクしています。 その元のExcelファイルは、日付ごとに作成したフォルダにいれて毎日作成しています。 年間で自動的に集計したいと考え、下記のような関数から必要なデータを取り出しています。 =SUMPRODUCT(('F:\出欠関係\4月24日\[1nen.xls]11'!K4:K45=1)*1) 教えていただきたいのは、「4月24日」の箇所を自動的にコンピュータの日付にしたいのですが上手い方法が思いつきません。 アドバイスをお願いいたします。

専門家に質問してみよう