質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
VBA

VBAはオブジェクト指向プログラミング言語のひとつで、マクロを作成によりExcelなどのOffice業務を自動化することができます。

Q&A

解決済

2回答

10958閲覧

最終列が変動する、行合計を求めたい SUM関数 VBA

iwabuchi178

総合スコア14

VBA

VBAはオブジェクト指向プログラミング言語のひとつで、マクロを作成によりExcelなどのOffice業務を自動化することができます。

0グッド

0クリップ

投稿2020/08/27 16:45

前提・実現したいこと

超初心者です。
最終列に行合計を入れるマクロを作成しています。
最終列は都度変動します。

最終列が変動せず、F列で固定の場合はできたのですが、
変動する場合がわかりません。
ご指導お願いいたします。

Sub 総数量計算 ()

'メーカーごとの総数量計算
'A1セルを右から見て合計列を取得

Dim 合計列 As Long 合計列 = Wb2.Worksheets(2).Range("A1").End(xlToRight).Column Wb2.Worksheets(2).Cells(1, 合計列 + 1) = "合計" '1列目を(Rows.Count,1)下から上に見て最終行を取得 最終行 = Wb2.Worksheets(2).Cells(Rows.Count, 1).End(xlUp).Row For i = 2 To 最終行 Wb2.Worksheets(2).Cells(i, 合計列 + 1) = "=Sum(C" & i & ":F" & i & ")" Next i End Sub

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答2

0

VBA

1For i = 2 To 最終行 2Wb2.Worksheets(2).Cells(i, 合計列 + 1) = "=Sum(C" & i & ":F" & i & ")" 3Next i

の部分を

VBA

1For i = 2 To 最終行 2 Wb2.Worksheets(2).Cells(i, 合計列 + 1).FormulaR1C1 = "=Sum(rc3:rc[-1])" 3Next i

もしくはForNextを使わず一括で

VBA

1Dim ws2 As Worksheet: Set ws2 = Wb2.Worksheets(2) 2 3ws2.Range(ws2.Cells(2, 合計列 + 1), ws2.Cells(最終行, 合計列 + 1)).FormulaR1C1 = "=Sum(rc3:rc[-1])"

でいかがでしょうか。


参考にしてみてくださいね
セルに数式を入力/取得する(Formula/FormulaR1C1プロパティ)

投稿2020/08/28 00:13

編集2020/08/28 00:34
radames1000

総合スコア1923

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

iwabuchi178

2020/08/28 00:32

ありがとうございます。 FormulaR1C1の仕組みがまだよくわからず、Nextを使っていました。 再度勉強させていただきます。
guest

0

ベストアンサー

VBA

1Wb2.Worksheets(2).Cells(i, 合計列 + 1) = "=Sum(C" & i & ":F" & i & ")"

の箇所を

VBA

1wb2.Worksheets(2).Cells(i, 合計列 + 1) = "=Sum(C" & i & ":" & Cells(i, 合計列).Address(False, False) & ")"

にしてはいかがでしょうか。

投稿2020/08/27 19:50

kitasue

総合スコア314

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

iwabuchi178

2020/08/28 00:33

ありがとうございます。 Address(False, False)というプロパティ??もあるのですね。 独学でやっているので、一進一退の毎日です。 大変勉強になりました。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問