こんにちはゲストさん。会員登録(無料)して質問・回答してみよう!

解決済みの質問

エクセルマクロ、集計行の上に空白行挿入

エクセルデータがA、B、C、D、E列1000行まであります。
C列基準でE列を合計するマクロを作成しましたが(集計行はデータの下に挿入)、実行の結果、新たに挿入される集計行の上に空白行を1行挿入していくということを、作成したマクロに付加できるでしょうか?
ご教授頂きたく、お願いします。

投稿日時 - 2011-05-18 11:46:27

QNo.6745907

困ってます

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

だいたい次のようなカンジになります

Sub Macro1()
 Dim i As Long
’集計を挿入する
 Range("A1").RemoveSubtotal
 Range("A1").Subtotal GroupBy:=3, Function:=xlSum, _
  TotalList:=Array(5), Replace:=True, PageBreaks:=False, SummaryBelowData:=True
’集計行の前に空行を挿入する
 For i = Range("A1").CurrentRegion.Rows.Count To 1 Step -1
 If Cells(i, "A").EntireRow.Summary Then
  Cells(i, "A").EntireRow.Insert shift:=xlShiftDown
 End If
 Next i
End Sub

が,
>空白行を1行挿入していく

そういうことは「しない」ことを強くお薦めします。
空白行を挿入すると範囲の連続がそこで途切れてしまい,続きの仕事(たとえば挿入した集計を削除するとか,再度集計するといった事を含めて)に色々な支障を来します。

投稿日時 - 2011-05-18 12:34:41

お礼

早速のご回答ありがとうございました。
試してみたら思った通りにできました。助かります。
因みに行挿入は一番最後の工程なので後作業はありません。

投稿日時 - 2011-05-18 15:34:38

ANo.1

このQ&Aは役に立ちましたか?

0人が「このQ&Aが役に立った」と投票しています

回答(2)

ANo.2

どういうVBAコードで集計しているのか、書かないで、この質問をするのはおかしいのでは。
コードとかやり方(ロジック)だけでも、など。他人には判るはずが無い。
例えばC列でキーが切れるごとに1行合計を挿入するなど下手なやり方だし、マクロの記録で「集計」でやったのなら、質問の件は難しいから、事後にするとか。
それに、データの小数例示もして質問すること。

投稿日時 - 2011-05-18 12:55:43

お礼

集計は、操作のマクロ記録で行いました。
keithinさんの回答で解決しました。
ありがとうございました。

投稿日時 - 2011-05-18 15:36:40

あなたにオススメの質問