VBAとは
VBAはVisual Basic for Applicationsの略、Microsoft社のOffice製品であるExcel、Word、PowerPointなどで使えるプログラミング言語です。
VBAのプログラミングを使うと手で行っていた何回も行っていた操作を一度でできたり、一度に大量の操作ができたりします。
VBAはExcel、Word、PowerPointだけでプログラミングできるため、プログラミングを初めてする方におすすめです。
この記事で使用しているExcelは、2021年5月時点のOffic365の最新バージョンになります。
VBAとマクロの違い
VBAのプログラミングをしていると、VBAとマクロの2つの言葉をよく聞くことがあります。
2つの言葉を同じように使っている場合もありますが、実際には次のように意味が違います。
このブログでは、Office製品を使用したプログラミングはVBAと呼びます。
VBAはOffice製品で動かすことができるプログラミング言語
マクロはOffice製品を動かした操作を記録し、再生できる機能
マクロ
最初にマクロの設定から実行までについて説明します。
設定
マクロを記録し、実行するためには次の手順を行ってください。
Excelを起動します。
メニューのファイルを選択します。

「その他…」を選択します。

オプションを選択します。

リボンのユーザー設定を選択します。

赤枠の「開発」を選択します。

選択後、「OK」ボタンをクリックします。

メニューに赤枠の「開発」が表示されていることを確認します。
表示されていれば、マクロの記録・実行ができます。

マクロのサンプル
マクロの設定後、実際にサンプルを作ってみます。
作成するサンプルは次の通りです。

マクロの登録
メニューの「開発」タブを選択します。

繰り返しの処理を行うため、次の画像のように赤枠の箇所を選択します。

「マクロの記録」を選択し、マクロの記録を開始します。

マクロ名を入力するダイアログが表示されるため、適当な名前を入力し、「OK」ボタンをクリックします。
ここでは、表示されたマクロ名をそのまま使用します。

B11セルに赤枠箇所のように入力します。

B11セルの入力内容は次の通りです。
=B3 & " " & C3
次にC11セルに赤枠箇所のように入力します。

C11セルの入力内容は次の通りです。
=D3
セルの入力内容は次の通りになります。

「記録終了」をクリックし、マクロの記録を終了します。

マクロの記録が終了すると次のように表示されます。

マクロの実行
次の画像のように①のB12セルを選択し、②の「マクロ」をクリックします。

次のダイアログが表示されるため、「実行」ボタンをクリックします。

赤枠の箇所に4行目を編集した内容が表示されます。

マクロの保存
マクロのファイルはExcelマクロ有効ブック(*.xlsm)で保存してください。
通常のExcelファイルで保存すると作成したマクロは消えます。
Excelファイルで作成した場合、次の手順でマクロのファイル形式で保存してください。
「ホーム」タブの選択後、「上書き保存」をクリックします。

Excelファイルにマクロが存在する場合、次のようなダイアログが表示されるため、「いいえ」ボタンをクリックします。

ファイル保存ダイアログが表示されるので、ファイルの種類を変更します。

ファイルの種類は「Excelマクロ有効ブック(*.xlsm)」を選択します。

「保存」ボタンをクリックし、Excelマクロファイルを保存します。

VBA
次にVBAの簡単なプログラミングについて説明します。
設定
VBAでプログラミングするためには、メニューに「開発」が表示されるように設定します。
設定方法はマクロの設定を参照してください。
はじめてのVBAプログラミング
ボタンをつけてメッセージを表示する次のようなプログラミングを作成します。

ExcelのVBAでボタンをつける方法は次の2つがあります。
この記事では2つの方法について紹介します。
- フォームコントロール
- ActiveXコントロール
フォームコントロール
フォームコントロールのボタンをつけるため、開発>挿入を選択します。

フォームコントロールのボタンをクリックします。

クリック後、マクロの登録ダイアログが表示されるので、「OK」ボタンをクリックします。

挿入したボタンを選択し、左クリックメニューの「テキストの編集」を選択します。
選択後、”ボタン1″にカーソルがあたるので、ボタン名を”ボタン”に変更します。

次にVBAのプログラミングを行うため、ボタンを選択し、左クリックメニューの「マクロの登録」を選択します。

表示された画面で「新規作成」ボタンをクリックします。

ボタンクリック後、次の「Microsoft Visual Basic for Application」が表示されます。
マクロでプログラミングをする場合、赤枠で囲った標準モジュールが自動的に追加されます。

追加されたボタンの関数に次のようにプログラミングを記述し、保存します。
保存後、「×」ボタンをクリックし、画面を閉じます。

記述するプログラミングは次の通りです。
1、3行目は自動的に追加されるので、記述するのは2行目の箇所です。
Sub ボタン1_Click()
MsgBox ActiveSheet.Cells(3, 2).Value & "のメッセージを表示"
End Sub
プログラミング後、ボタンをクリックすると次のようにメッセージが表示されます。

これでフォームコントロールを使用したプログラミングは終了です。
ActiveXコントロール
次に、ActiveXコントロールを使用したプログラミングを紹介します。
開発>挿入を選択します。
選択後、Activeコントロールのボタンをクリックします。

挿入されたボタンを選択します。

左クリックメニューの「プロパティ」を選択します。

表示された画面でCaptionの項目を選択します。

Captionの入力欄を”ボタン”に変更します。
変更後、「×」ボタンをクリックし、閉じます。

ボタンを選択し、左クリックメニューの「コードの表示」を選択します。

選択後、次の「Microsoft Visual Basic for Application」が表示されます。

2行目に次のようにプログラミングを記述します。
プログラミングの記述後、保存し、「×」ボタンをクリックします。

記述するプログラミングは次の通りです。
1、3行目は自動的に追加されるので、記述するのは2行目の箇所です。
Private Sub CommandButton1_Click()
MsgBox ActiveSheet.Cells(3, 2).Value & "のメッセージを表示"
End Sub
デザインモードが選択状態になっているため、選択し、選択状態を解除します。
デザインモードが選択状態の場合、VBAのプログラムは動かすことはできません。

デザインモードの選択状態が解除すると次のような画面が表示されます。

ボタンをクリックすると次のようにメッセージが表示されます。

これでActiveXコントロールを使用したプログラミングは終了です。
最後に
この記事では、VBAのプログラムを行うため、次のような内容について紹介しました。
- マクロの設定・実行
- VBAの設定・サンプルプログラム
記事は長いのですが、ひとつずつの手順は簡単にできるので、VBAのプログラミングを覚えたい方は実際に試してみてください。
コメント