記録したマクロはVBA(Visual Basic for Applications)コードとして保存されており、VBAエディターを使って編集することができます。以下に、記録したマクロの編集手順を示します。
記録したマクロの編集手順
マクロの記録を実行して記録してある場合の手順になります。
VBAエディターを開く
「開発」タブ内の「マクロ」ボタンをクリックします。
「マクロ」ダイアログボックスが表示されます。

「プロジェクト – VBAProject」にある「標準モジュール」のModule1というのがあります。
この標準モジュールには、サブルーチン(Subプロシージャ)や関数(Functionプロシージャ)などのVBAのプログラムコードを含めることができます。
右側のウィンドウがエディタになり、コードを記入することができます。

コードの意味
サブルーチン(Subプロシージャ)が一つのプログラムの集まりになります。
「Sub Macro1() ~ End Sub」これが一つのプログラムになります。
Sub Macro1()
'
' Macro1 Macro
'
'
ActiveCell.FormulaR1C1 = "1230"
Range("A2").Select
ActiveCell.FormulaR1C1 = "120"
Range("A3").Select
ActiveCell.FormulaR1C1 = "150"
Range("A4").Select
End Sub
「’」このシングルクォーテーションはコメントが記入できる記号になります。
コメントは、コードの中に説明や注釈を追加するためのもので、コードの実行には影響を与えません。コメントはコードの理解を助けるために非常に有用です。
コメントの用途
- コードの目的や機能を説明する。
- 特定の行の動作を詳細に記述する。
- コードの変更履歴やバージョン情報を記録する。
- 一時的にコードの一部を無効化する(デバッグ時など)。
コメントから下の行の意味
ここからが動作になります。
ActiveCell.FormulaR1C1 = "1230"
Range("A2").Select
ActiveCell.FormulaR1C1 = "120"
Range("A3").Select
ActiveCell.FormulaR1C1 = "150"
Range("A4").Select
全体の動作
- 現在のアクティブセルに “1230” を入力します。
- セルA2を選択します。
- セルA2に “120” を入力します。
- セルA3を選択します。
- セルA3に “150” を入力します。
- 最後にセルA4を選択して終了します。
動作の確認
「開発」タブ内の「マクロ」ボタンをクリックし、「マクロ」ダイアログボックスを表示させます。

「Macro1」を選択し実行ボタンをクリックします。
「Sub Macro1()」のこの「Macro1」がマクロ名になります。ここは自由に変更できます。

このようにセルに自動で入力されました。

プロシージャの編集
実際に編集するとどういう動きになるか分かります。
コードを以下のように編集します。
Sub create()
'
' Macro1 Macro
'
'
ActiveCell.FormulaR1C1 = "みかん"
Range("B2").Select
ActiveCell.FormulaR1C1 = "りんご"
Range("B3").Select
ActiveCell.FormulaR1C1 = "ばなな"
Range("B4").Select
End Sub
入力が完了したらセルB1をクリックしマクロを実行します。実行すると以下のようになります。

このように、指定されたセルに順次値を入力し、特定のセルを選択するという操作が行われます。