第11回 VBAの基本をやさしく理解する(Sub・Function・スコープ入門)


この記事でできるようになること(ゴール)

  • ✅ マクロの正体(VBA)を理解できる
  • ✅ Sub と Function の違いが分かる
  • ✅ 変数の基本が分かる
  • ✅ Public / Private の意味が理解できる
  • ✅ Module・Worksheet・Workbook の違いが分かる

第10回のおさらい:マクロの正体とは?

前回は「マクロ記録機能」を使って、
操作を自動化する方法を学びました。

実は、記録されたマクロはすべて

👉 VBA(Visual Basic for Applications)

というプログラミング言語で書かれています。

つまり、マクロとは

👉 「VBAで書かれたプログラム」

なのです。


VBAは難しいのか?

結論から言うと、

👉 基本だけなら難しくありません

Excel操作を言葉で書いているだけです。


VBAの世界をのぞいてみる

マクロ記録をすると、次のようなコードが作られます。

Sub データ整理()

    Columns("A:A").Select
    Selection.Delete

End Sub

意味:

  • A列を選択
  • 削除する

👉 Excelで行った操作がそのまま記述されています。


Subとは?

Sub(サブルーチン)は、

👉 「処理を実行する命令のまとまり」

です。


基本形

Sub 名前()

    処理内容

End Sub

例:メッセージを表示する

Sub Sample()

    MsgBox "処理が完了しました"

End Sub

マクロとして実行すると、
メッセージが表示されます。


Functionとは?

Functionは、

👉 「結果(値)を返す処理」

です。


基本形

Function 名前()

    名前 = 戻り値

End Function

例:数値を2倍にする関数

Function DoubleValue(x)

    DoubleValue = x * 2

End Function

Excelのセルで:

=DoubleValue(10)

👉 結果:20


Sub と Function の違い

項目SubFunction
目的処理の実行値を返す
セルで使用不可可能
データ整理計算

変数とは?

変数は、

👉 「データを一時的に保存する箱」

です。


Dim 売上 As Long

売上 = 100000

よく使うデータ型

内容
Integer整数
Long大きな整数
Double小数
String文字列
Date日付

初心者は Long と String を覚えれば十分です。


Public と Private(スコープ)

スコープとは、

👉 「どこから使えるかの範囲」

です。


Private

👉 同じモジュール内だけで使用可能

Private Sub Sample()

Public

👉 他のモジュールからも使用可能

Public Sub Sample()

Moduleとは?

VBAのコードを書く場所です。
最も一般的な保存場所です。

👉 通常のマクロはここに保存されます。


Worksheet モジュール

特定のシートに関連する処理を書く場所です。

例:

  • セルが変更されたとき
  • シートが開かれたとき

Workbook モジュール

ブック全体に関する処理を書く場所です。

例:

  • ファイルを開いたとき
  • 保存したとき
  • 閉じたとき

それぞれの役割まとめ

場所用途
Module一般的な処理
Worksheetシート専用処理
Workbookブック全体の処理

VBAができると何が変わるか

マクロ記録ではできない高度な処理が可能になります。

  • 条件分岐(If)
  • 繰り返し処理(For)
  • 自動判定
  • データ操作
  • 複数ファイル処理

👉 Excelが簡易システムになります。


初心者が覚えるべき最小セット

まずはこれだけ理解すれば十分です。

  • Sub:処理を実行
  • Function:値を返す
  • 変数:データを保存
  • Module:コードの場所

管理職・経営者視点:業務改善の幅が広がる

VBAを理解すると、

  • 定型業務の完全自動化
  • 人に依存しない仕組み
  • 作業時間の大幅削減
  • 内製化によるコスト削減

が可能になります。


今日のまとめ

  • マクロの正体はVBA
  • Subは処理、Functionは値を返す
  • 変数はデータを保存する箱
  • Public / Private は使用範囲
  • Module / Worksheet / Workbook は役割が違う

次回予告(最終回)

第12回では、このシリーズの集大成として

自動集計ツールの完成

を目指します。

  • ボタン1つでデータ処理
  • 集計・グラフ作成
  • 出力まで自動化
  • Excelを業務システムとして使う方法

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です