VBAは、Excelで作業を自動化できるプログラミング言語です。ここでは、VBAの基本を、できるだけシンプルに、わかりやすく説明します。初心者の方でもスムーズに理解できるよう、丁寧に進めていきます。
変数の使い方
まず、変数について説明します。変数とは、数字や文字を一時的に保存しておく箱のようなものです。VBAでは、この箱を使う前に「この箱を使います」と宣言します。
Dim num As Integer
Dim name As String
上のコードでは、num
という箱を用意し、そこに整数を入れる準備をしています。また、name
という箱も用意して、そこには文字(たとえば「山田」など)を入れる準備をしています。
計算の基本
VBAでは、足し算や引き算、掛け算や割り算を簡単にできます。次のコードでは、2つの数字を足して、その結果を画面に表示します。
Dim a As Integer
Dim b As Integer
Dim result As Integer
a = 5
b = 10
result = a + b
MsgBox result
このコードを実行すると、「15」と表示されます。a
に5を、b
に10を入れて、それを足し合わせた結果がresult
という変数に保存され、メッセージボックスに表示されるという流れです。
条件分岐の使い方
プログラムでは「もし〇〇だったらこうする、それ以外だったらこうする」という流れを作ることができます。これを条件分岐といいます。
If文の例
たとえば、テストの点数によって、異なるメッセージを表示する場合は、次のように書きます。
Dim score As Integer
score = 85
If score >= 90 Then
MsgBox "すばらしい!"
ElseIf score >= 70 Then
MsgBox "がんばった!"
Else
MsgBox "もっとがんばろう!"
End If
この例では、score
が85なので、「がんばった!」と表示されます。条件によって表示されるメッセージが変わる仕組みです。
繰り返し処理
同じ処理を何回も繰り返したいときには、ループという機能を使います。たとえば、「1から10までの数字を順番に表示する」といった場合に便利です。
Forループの例
次のコードでは、1から10までの数字が1つずつメッセージボックスに表示されます。
Dim i As Integer
For i = 1 To 10
MsgBox i
Next i
このループでは、i
が1から10まで順番に変わり、その都度メッセージボックスに表示されます。
エラー処理
プログラムを実行していると、思わぬエラーが起こることがあります。たとえば、「0で割る」といった計算はエラーになります。そんなときにエラーに対処する方法を決めておくことが大切です。
エラーハンドリングの例
以下のコードでは、エラーが起きたときに「エラーが発生しました」とメッセージを表示するようにしています。
Sub Example()
On Error GoTo ErrorHandler
Dim x As Integer
x = 1 / 0 ' ここでエラーが発生します
Exit Sub
ErrorHandler:
MsgBox "エラーが発生しました: " & Err.Description
End Sub
このコードは、エラーが発生したときにそれをキャッチして、エラーメッセージを表示するようになっています。
まとめ
VBAの基本を少しずつ理解して、簡単なプログラムから始めてみてください。最初はシンプルなコードでも、練習していけば徐々に複雑な作業も自動化できるようになります。