• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:Excelで特定の日付範囲のデータの合計を出すには)

Excelで特定の日付範囲のデータの合計を出す方法

このQ&Aのポイント
  • Excelで特定の日付範囲のデータの合計を出す方法を教えてください。
  • 1シート目の特定の日付範囲のデータの合計金額を2シート目に表示する方法を教えてください。
  • Excelで日付を月までに省略して判断し、特定の日付範囲のデータの合計を出す方法を教えてください。

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

  • ベストアンサー
  • KURUMITO
  • ベストアンサー率42% (1835/4283)
回答No.1

シート1ではA,B,C列の2行目から下方にデータが入力されているとします。 シート2ではA2セルから下方に2011年4月のようにデータが入力されているとしてB列に合計金額を表示させるのでしたらB2セルには次の式を入力して下方にオートフィルドラッグします。 =IF(A2="","",SUMPRODUCT((YEAR(Sheet1!B$2:B$1000)=YEAR(A2))*(MONTH(Sheet1!B$2:B$1000)=MONTH(A2))*(Sheet1!C$2:C$1000)))

scarxyuchi
質問者

お礼

早速の回答ありがとうございます! すぐにシートにて試してみました。 ばっちりです! ここ数日ずっと頭を抱えていたのがやっとすっきりしました。 本当にありがとうございました。

その他の回答 (1)

  • kagakusuki
  • ベストアンサー率51% (2610/5101)
回答No.2

SUMPRODUCT関数は、計算負荷が大きくなり易いため(1000行以内という事でしたら、まだ許容範囲内だと思いますが)、 >今後もデータは増えていく という事ですし、御質問の様な場合には、「Sheet2のA列で指定されている月の末日」以前の期間のデータの合計から、、「Sheet2のA列で指定されている月の前月の末日」以前の期間のデータの合計を差し引いた方が、計算負の負荷は少なくなります。  この方法に基づいた場合には、Sheet2のA2に入力する関数は次の様なものとなります。 =IF(ISNUMBER(1/DAY($A2)),SUMIF(Sheet1!$B:$B,"<"&DATE(YEAR($A2),MONTH($A2)+1,1),Sheet1!$C:$C)-SUMIF(Sheet1!$B:$B,"<"&$A2,Sheet1!$C:$C),"") 或いは =IF(ISNUMBER(1/DAY($A2)),SUMIF(Sheet1!$B:$B,"<"&DATE(YEAR($A2),MONTH($A2)+1,1),Sheet1!$C:$C)-SUMIF(Sheet1!$B:$B,"<"&(TEXT($A2,"yyyy/m")&"/1")+0,Sheet1!$C:$C),"")

scarxyuchi
質問者

お礼

回答ありがとうございます! こちらの式でも試したところ、やはりばっちりでてきました! 関数にも負荷がかかるとか、使い方によって違いがあるんですね。。。 知りませんでした(汗 もっと関数について勉強していきたいと思います! 丁寧な回答ありがとうございました*^^*

関連するQ&A