見出し画像

Excel VBA スタンダード 合格への道のり①

エクセルについてSUM関数くらいしか知らない僕が、VBAをマスターしていく記録を残していきます。
誰かの参考になればいいなって思います。

マクロの基本

マグロではありません、マクロです。
マクロはExcel上のプログラミング言語のようなものみたい。
その中での基本はプロシージャーに処理内容が書かれる。

Sub hogehoge()
 処理内容
End Sub

みたいなのが基本。
プロシージャーは普通1つずつ実行される。
他のプロシージャーを呼ぶときはCallを使う。

Sub hogehoge1()
 処理内容
 Call hogehoge2
End Sub

Sub hogehoge2()
 処理内容
End Sub

変数もプロシージャーの中に定義できるみたい。
ただし、プロシージャーの中で定義した変数はその中でしか使えない。

Sub hogehoge1()
 Dim A As Long
   A = 100
// 上の2文で変数Aを定義して、その中に100を代入//
 Range(“A1”) = A
End Sub
————————————————————
Sub hogehoge2()
 処理内容
   Range(“B1”) = A * 2
  //変数Aは使えないからエラーが出る//
End Sub

でも、プロシージャーの外で変数を宣言するモジュールレベル変数を使えば、全てのプロシージャーで変数を使うことができるようになる。

Dim A As Long

Sub hogehoge1()
   A = 100
 Range(“A1”) = A
End Sub
————————————————————
Sub hogehoge2()
   Range(“B1”) = A * 2
//Aはモジュールレベル変数だからここでも使える//
End Sub

まとめ

マクロ
Excel内のプログラミング言語

プロシージャー
処理内容を書く所 
Sub 名前()
 処理内容
End Sub

変数
数字や文字列を入れるための入れ物
プロシージャーの中で定義した変数は、その中でしか使えない
ただし、モジュールレベル変数なら全てのプロシージャーで使える