• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:マクロで可能ですか。)

Excelで1ヶ月の売上表の日付毎の合計を最終行に表示する方法

このQ&Aのポイント
  • Excelを使用して1ヶ月の売上表の日付毎の合計を最終行に表示する方法について教えてください。
  • 現在、関数をセルにコピーする方法で最終行を探し、31日分コピーする必要がありますが、もっと簡単な方法はありますか?
  • Excel 2010を使用しており、シート名に依存しない方法で他のユーザーも使えるようにしたいです。ご教授いただけると嬉しいです。

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

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

No.1です。 投稿後 >最終行を探し、31日分コピーするのが不評です。 を見逃していました。 前回の方法は最終行を気にすることなく、これ以上データはない!というくらいまであらかじめフィル&コピーしておいても大丈夫だと思いますが、 どうしてもVBAで!というコトであれば、一例です。 (VBAでもやっているコトは同じです) Sub Sample1() Dim lastRow As Long lastRow = Cells(Rows.Count, "A").End(xlUp).Row If lastRow > 1 Then Range(Cells(2, "D"), Cells(lastRow, "D")).ClearContents End If With Range(Cells(2, "D"), Cells(lastRow, "D")) .Formula = "=IF(A2<>A3,SUMIF(A$2:A2,A2,C$2:C2),"""")" .Value = .Value End With End Sub ※ 関数の場合はデータ変更時に即座に結果が表示されますが、 VBAだとその都度マクロを実行しなければなりません。m(_ _)m

j0b
質問者

お礼

ご回答ありがとうございます。 何度もありがとうございました。 助かりました。

その他の回答 (1)

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

こんばんは! 当然VBAで可能ですが、今回の場合は関数で大丈夫だと思います。 前提条件として、A列日付は昇順に並んでいるとします。 ↓の画像でD2セルに =IF(A2<>A3,SUMIF(A$2:A2,A2,C$2:C2),"") という数式を入れフィルハンドルで下へコピーしています。 これで何とかご希望通りにならないでしょうか?m(_ _)m

j0b
質問者

お礼

ご回答ありがとうございます。

関連するQ&A