
No.2ベストアンサー
- 回答日時:
(テストデータ)A1:C9小計合計のない状態で。
下記は結果です。支店コード金額手数料
1101
1202
1303
小計606
2101
2202
小計303
352
3102
3151
小計305
合計12014
(コード)
Sub test01()
d = Range("a2").CurrentRegion.Rows.Count
' MsgBox d
Cells(d + 1, 1) = "END"
Dim st1, gt1, st2, gt2 As Long
st1 = 0: gt1 = 0: st2 = 0: gt2 = 0
mk = Cells(2, 1)
'==========
For i = 2 To 10000
If Cells(i, 1) = "END" Then Exit For '最終行判定
If Cells(i, 1) = mk Then '前行とコード同じか
'------今回行分加算
st1 = st1 + Cells(i, 2)
st2 = st2 + Cells(i, 3)
Else
mk = Cells(i, 1)
'--------小計
Cells(i, 1).EntireRow.Insert
Cells(i, 1) = "小計"
Cells(i, 2) = st1
gt1 = gt1 + st1
st1 = 0
Cells(i, 3) = st2
gt2 = gt2 + st2
st2 = 0
'-----今回行分加算
i = i + 1
st1 = st1 + Cells(i, 2)
st2 = st2 + Cells(i, 3)
End If
Next i
'============終了
'-------小計
Cells(i, 1) = "小計"
MsgBox st1
Cells(i, 2) = st1: gt1 = gt1 + st1: st1 = 0
Cells(i, 3) = st2: gt2 = gt2 + st2: st2 = 0
'-------合計
Cells(i + 1, 1) = "合計"
Cells(i + 1, 2) = gt1
Cells(i + 1, 3) = gt2
End Sub
(結果)上記の通り
(本番注意)
(1)B列-->J列、2-->10,C列-->K列、3-->11
(2)最後にENDが残るが消す。
(3)テストする時、元データを残して行うこと。
行が増えてしまうので、元戻しが大変ですから。
No.1
- 回答日時:
こんにちは。
maruru01です。「Visual Basic」のカテゴリーということは、マクロ(VBA)で行いたいということでしょうか。
支店数が5ということでしたら、総計を入れて6行分追加して関数を入力するだけで、手作業でやった方が早いと思いますが。
それとも、そのようなファイル(やシート)がたくさんあって、マクロで自動化したいということでしょうか。
もしくは、単に入力する関数がわからないということでしょうか。
補足して下さい。
この回答への補足
早速のご回答ありがとうございます。
質問の仕方が悪く、趣旨がうまく伝わらなくて申し訳ありません。
行がたくさんあります。しかも月によって一支店分の行数が不定です。
A列
1234
1234
1234
・
・
・
1234
(1行挿入) J列小計、K列小計
5678
5678
5678
・
・
・
5678
(1行挿入) J列小計、K列小計
7890
7890
のように1234や5678の最後の行をつかみ、下に行を挿入し、J列、K列の数値の小計を出したいのです。そして全支店の総合計も出したいのです。手作業ですとかなり時間がかかりますし、毎月のことですので、BVAで自動化できないものかと思ったのです。よろしくお願いします。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
Excelで、あるセルの値に応じて...
-
IIF関数の使い方
-
Worksheets メソッドは失敗しま...
-
VBAのFind関数で結合セルを検索...
-
vba 2つの条件が一致したら...
-
Cellsのかっこの中はどっちが行...
-
VBAでのリスト不一致抽出について
-
VBA 何かしら文字が入っていたら
-
URLのリンク切れをマクロを使っ...
-
B列の最終行までA列をオート...
-
エクセルVBA intersect colu...
-
複数csvを横に追加していくマク...
-
Excel VBA:エクセルのマクロで...
-
【VBA】2つのシートの値を比較...
-
マクロ 最終列をコピーして最終...
-
データグリッドビューの一番最...
-
VBAで指定範囲内の空白セルを左...
-
重複データの合算(VBA)
-
【Excel VBA】カンマと改行コー...
-
エクセル 2つの表の並べ替え
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
Excelで、あるセルの値に応じて...
-
Worksheets メソッドは失敗しま...
-
Cellsのかっこの中はどっちが行...
-
vba 2つの条件が一致したら...
-
【VBA】2つのシートの値を比較...
-
B列の最終行までA列をオート...
-
IIF関数の使い方
-
URLのリンク切れをマクロを使っ...
-
VBAを使って検索したセルをコピ...
-
DataGridViewに空白がある場合...
-
VBA 何かしら文字が入っていたら
-
VBAのFind関数で結合セルを検索...
-
複数の列の値を結合して別の列...
-
VBAでのリスト不一致抽出について
-
データグリッドビューの一番最...
-
VBAで指定範囲内の空白セルを左...
-
rowsとcolsの意味
-
【Excel VBA】 B列に特定の文字...
-
VBAで、特定の文字より後を削除...
-
エクセル 2つの表の並べ替え
おすすめ情報