• ベストアンサー

エクセル自動で先月分の途中までの総額の出し方

エクセル2010を使ってます。 店舗の売り上げ管理をしているものです。 例えば今日が5月27日だとして先月分の4月1日から4月27日までの売り上げの総額と5月1日から今日(5月27日)までの売り上げを比べたいのですが、4月のシートには4月1日から30日までのデータが入力されています。 わからないのが4月の末日までの総額じゃなくて途中の日付までの総額の出し方を知りたいです。 Aの列が日付の列、Bの列が売り上げの列だとします。 5月分は明日以降の分のデータが入力されていないので単純にSUMで出せばわかるのですが、 4月は途中の総額なのでわかりません。 今日の日付はTODAY関数を使って出して、セルの書式設定で日付だけを表示させて何かできないでしょうか? ちなみに4月と5月は同じブックですがシートは別です。 教えてください。

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

  • ベストアンサー
  • keithin
  • ベストアンサー率66% (5278/7941)
回答No.1

Sheet1に4月として。 A列に、「年/月/日」で日付が記入してあるのだとすると =SUMIF(Sheet1!A:A,"<="&DATE(YEAR(TODAY()),MONTH(TODAY())-1,DAY(TODAY())),Sheet1!B:B) A列に「日」だけ記入してあるなら =SUMIF(Sheet1!A:A,"<="&DAY(TODAY()),Sheet1!B:B)

stlp5814
質問者

お礼

ありがとうございます。 どうにかできました。むずかしいですね。。

その他の回答 (1)

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

例えばシート1に4月の売上があり、A2セルから下方には4月1日から4月30日までの日付が、B2セルから下方にはその日の売上が入力されているとします。 そこで5月の売上の表ですが例えばシート2としてA2セルから下方には5月1日から5月31日までの日付が、B2セルから下方にはその日の売上が入力されるとします。 また、C1セルには当日までの売上合計、D1セルには同日までの先月売上合計とでも項目名を入力します。 C2セルには次の式を入力して下方にドラッグコピーします。 =IF(B2="","",IF(A2<=TODAY(),SUM(B$2:B2),"")) 売上の比較のデータとなるD2セルには次の式を入力して下方にドラッグコピーします。 =IF(A2="","",IF(A2<=TODAY(),SUM(Sheet1!B$2:INDEX(Sheet1!B:B,MATCH(DATE(YEAR(A2),MONTH(A2)-1,DAY(A2)),Sheet1!A:A,1))),"")) これで今日の日付までの今月と先月の売上高がC列とD列のデータを比較することで出来るようになります。

stlp5814
質問者

お礼

二個目の式が半端なく難しいですねw ありがとうございました!

関連するQ&A