Excel自動化・マクロ入門:繰り返し作業を自動化して残業ゼロに近づく
Excelのマクロ・VBAを使った業務自動化の方法を初心者向けに解説。マクロの記録・VBAの基本・よく使う自動化パターンまで、今日からExcel自動化を始めるための完全入門ガイドです。
✓この記事でわかること
Excelのマクロ・VBAを使った業務自動化の方法を初心者向けに解説。マクロの記録・VBAの基本・よく使う自動化パターンまで、今日からExcel自動化を始めるための完全入門ガイドです。
Excelマクロで仕事が劇的に変わる
「毎日同じ操作を繰り返している」「月次レポートの作成に何時間もかかる」——こうした悩みをExcelのマクロ・VBAで解決できます。
マクロとは、繰り返し行う操作を自動実行する仕組みです。プログラミング未経験でも「マクロの記録」機能を使えば、今すぐ自動化を始められます。
マクロとVBAの違い
- マクロ:操作を記録・再生する機能(プログラミング知識不要)
- VBA(Visual Basic for Applications):Excelを操作するプログラミング言語(より高度な自動化が可能)
初心者はまず「マクロの記録」から始め、慣れてきたらVBAコードを編集・追記していくステップアップが理想的です。
Step1:マクロの記録で自動化を体験する
マクロの記録手順
-
「開発」タブ → 「マクロの記録」をクリック ※「開発」タブが見えない場合:ファイル→オプション→リボンのユーザー設定→「開発」にチェック
-
マクロ名を入力(例:「月次レポート作成」)
-
ショートカットキーを設定(例:Ctrl+Shift+M)
-
「OK」をクリックして記録開始
-
自動化したい操作を実際に行う
-
「記録終了」をクリック
これだけで操作が記録され、次回からショートカットキー一つで同じ操作が自動実行されます。
Step2:VBAの基本を理解する
VBAエディタを開く
Alt + F11 でVBAエディタが開きます。記録したマクロのコードを確認・編集できます。
VBAの基本構文
Sub マクロ名()
' ここに処理を書く
Range("A1").Value = "Hello World" ' A1セルに文字を入力
Range("A1:C3").ClearContents ' セル範囲をクリア
Cells(1, 1).Font.Bold = True ' A1を太字に
End Sub
よく使う基本操作
' セルに値を入力
Cells(1, 1).Value = "テスト"
' セルの値を変数に代入
Dim value As String
value = Range("A1").Value
' 繰り返し処理(1行目から10行目まで)
Dim i As Integer
For i = 1 To 10
Cells(i, 1).Value = i
Next i
' 条件分岐
If Range("A1").Value > 100 Then
Range("B1").Value = "高"
Else
Range("B1").Value = "低"
End If
実用的な自動化パターン
パターン1:データの整形・クリーニング
毎月CSVデータを取り込んで整形する作業を自動化する例です。
Sub データ整形()
' 不要な行を削除
Rows("1:3").Delete
' 特定の列を削除
Columns("C").Delete
' 全データをソート
Range("A1").CurrentRegion.Sort Key1:=Range("A1"), Order1:=xlAscending
End Sub
パターン2:レポートの自動生成
Sub 月次レポート作成()
' 新しいシートを追加
Sheets.Add After:=Sheets(Sheets.Count)
ActiveSheet.Name = "月次レポート"
' タイトルを入力
Range("A1").Value = "月次売上レポート"
Range("A1").Font.Size = 16
Range("A1").Font.Bold = True
' データを参照して集計
Range("B2").Formula = "=SUM(データ!B:B)"
End Sub
パターン3:ファイルの一括操作
複数のExcelファイルを一括で開いて処理する自動化も可能です。これにより月次ファイルのマージ作業が数時間から数分に短縮されます。
Excelマクロを副業に活かす
Excelマクロのスキルは副業として活用できます。
副業の例:
- 中小企業のExcel業務自動化コンサルティング
- クラウドワークスでの「Excel VBAマクロ作成」案件受注
- Excelテンプレート・ツールの販売(note・BOOTH)
VBAを使えるエンジニアは多くないため、ニッチな副業として安定した需要があります。
ChatGPTでVBAを書いてもらう
プログラミングが苦手な方は、ChatGPTにVBAコードを書いてもらう方法が便利です。
ChatGPTへの指示例: 「Excelの『売上データ』シートからA列の日付が今月のデータだけを抽出し、新しいシート「今月分」にコピーするVBAコードを書いてください」
ChatGPTが生成したコードをVBAエディタに貼り付けるだけで動作します。コードの意味を少しずつ理解していくと、自分でカスタマイズもできるようになります。
おすすめの学習リソース
- YouTube「Excel VBA 入門」で検索(無料で十分学べる)
- Udemy:Excel VBAの講座が豊富(セール時に1,200円程度)
- 書籍:「Excel VBAの教科書」シリーズ
まとめ
Excelマクロ・VBAは一度習得すれば一生使えるスキルです。
今日から始めるなら:
- 「マクロの記録」で一つ自動化を作ってみる
- 記録されたVBAコードを覗いてみる
- ChatGPTに「このコードをカスタマイズして」と依頼してみる
毎日1時間の繰り返し作業を自動化できれば、年間250時間の節約になります。その時間を副業・家族・趣味に使いましょう。
暮らしとお金のカフェ 編集部
副業・節税・フリーランス・資産形成の実践的な情報を発信。暮らしとお金をもっとよくするために、やさしい言葉で情報をお届けします。