お知らせ
こちらの記事は、電子書籍「難しく考えないExcel VBA基礎学習編」として出版されました。記事は途中までが試し読みの対象となります。
howahowablogのVBA記事が電子書籍にて販売となりました。
目標
Subプロシージャ・Functionプロシージャ・イベントプロシージャの違いを確認する
Excel VBA の「ByVal(値渡し)とByRef(参照渡し)」を理解して利用できる
3つのプロシージャの概要
プロシージャには「Subプロシージャ」・「Functionプロシージャ」・「イベントプロシージャ」の3つがあります。
3つのプロシージャの概要
Subプロシージャ
Subプロシージャは各種モジュールの中で実行されるプログラムです。ワークシートに設置したフォームコントロールボタンなどに「マクロの登録」をする場合はSubプロシージャである必要があります。
Functionプロシージャ
Functionプロシージャは他のプロシージャに呼び出されて実行されるプログラムです。Subプロシージャもサブルーチンとして呼び出して実行できますが、Functionプロシージャの特徴は戻り値(処理が動いた後に生成された値を返す機能)を利用できることです。FunctionプロシージャはVBAプログラムとして動かす以外にワークシート関数としても利用ができます。
SubプロシージャとFunctionプロシージャの違いをまとめると次のようになります。
Subプロシージャ | Functionプロシージャ | |
マクロの登録 | 〇 | × |
他プロシージャからの呼び出し | 〇 | 〇 |
引数の利用 | 〇 | 〇 |
戻り値の利用 | × | 〇 |
ワークシート関数として利用 | × | 〇 |
引数については下の「引数付きサブルーチンの概要と利用方法」を参考にしてください。
イベントプロシージャ
イベントプロシージャはシートの選択やマウスクリックなどをきっかけにして動くプロシージャのことです。
この記事の試し読みはここまでとなります。
「ByVal」と「ByRef」の概要と利用方法
Excel VBA の「ByVal」と「ByRef」とは
…
ByValとは
…
…
…
ByRefとは
…
…
…
サンプルプロシージャ1(ByVal:値渡し)
…
…
実行結果
…
サンプルプロシージャ2(ByRef:参照渡し)
…
…
実行結果
…
今回は以上となります。
howahowablogのVBA記事が電子書籍にて販売となりました。
ブックマークのすすめ
「ほわほわぶろぐ」を常に検索するのが面倒だという方はブックマークをお勧めします。ブックマークの設定は別記事にて掲載しています。