【エクセルマクロ】項目ごとに月別集計して表に出力:自動化

vba-項目ごとに月別集計して表に出力-アイキャッチ ExcelVBA

エクセルマクロで、項目ごとに月別集計して表に転記するVBAコードをご紹介します。

このページのマクロコードは、コピペで使えます。
ぜひお試しください!

項目ごとに月別集計して表に出力

以下のExcelVBAを実行すると、項目ごとに月別集計して表に出力します。


Sub 項目ごとに月別集計して表に出力()

Dim LastRow As Long
Dim i As Long
Dim j As Long
Dim Q As Long
Dim Target As String
Dim MyMonth As String

    Application.ScreenUpdating = False

    'A列の最終行を取得
    LastRow = Cells(Rows.Count, 1).End(xlUp).Row
    
    'E列 2~4行目までループ
    For i = 2 To 4
     
        'E列 商品名を変数代入
        Target = Cells(i, 5).Value
     
        'A列 2~最終行までループ
        For j = 2 To LastRow
        
            'A列の値とTargetが一致したら
            If Cells(j, 1) = Target Then
            
                'B列から「月」を取得して変数代入
                MyMonth = Month(Cells(j, 2))
                
                'F列~I列までループ
                For Q = 6 To 9
                
                    '1行目の「月」とMyMonthが一致したら
                    If Month(Cells(1, Q)) = MyMonth Then
                    
                        '表に売上金額を転記
                        Cells(i, Q) = Cells(i, Q) + Cells(j, 3)
                        Exit For
                    End If
                Next Q
            End If
        Next j
    Next i

    Application.ScreenUpdating = True

End Sub

マクロ実行前

A~C列:集計の表

E~I列:集計の表


 

B列の日付の表示形式は「yyyy/m/d」です。


 

[セルF1:I1] の日付の表示形式は「yyyy/m」です。


 

マクロ実行後

商品ごとに売り上げ金額を集計して、月別の表へ転記します。


 
 
この記事がお役に立ちますと幸いです。
 
・【エクセルマクロ】日付処理を自動化する使用例まとめ
 

【エクセルマクロ】日付処理を自動化する:使用例17選
...

 

「Excel自動化[最強]時短仕事術」
自動化の基礎と時短に役立つテクニック解説書
毎日の定型業務を手際良く行え、大幅な業務効率化を実現!