合計(Sum)を範囲セルに設定
うさこちゃん
最初から、SUMの範囲が決定しておらずプログラムでSUM関数を設定したい場合になどに使用できます。
サンプルではB列にC~JのSUMを作成し設定しています。
サンプルコード
Dim ObjThisSh As Object
Dim LngRowMax As Long
Dim StrSumMake As String
Dim LngSUM列 As Long
Dim LngSumカラム開始 As Long
Dim LngSumカラム終了 As Long
Dim LngRow開始 As Long
Set ObjThisSh = ThisWorkbook.Sheets("Sheet1")
LngSUM列 = 2
LngSumカラム開始 = 3
LngSumカラム終了 = 10
LngRow開始 = 2
With ObjThisSh
'最終行の取得
LngRowMax = .Cells(Rows.Count, 1).End(xlUp).Row
'SUMの作成
StrSumMake = "=SUM(" & .Cells(LngRow開始, LngSumカラム開始).Address(False, False) & ":" & _
.Cells(LngRow開始, LngSumカラム終了).Address(False, False) & ")"
.Range(.Cells(LngRow開始, LngSUM列), .Cells(LngRow開始, LngSUM列)).Formula = StrSumMake
'全部の行にSUMをコピー
.Range(.Cells(LngRow開始, LngSUM列), .Cells(LngRow開始, LngSUM列)).AutoFill _
Destination:=.Range(.Cells(LngRow開始, LngSUM列), .Cells(LngRowMax, LngSUM列)), Type:=xlFillCopy
End With