![VBAの基礎構文について~変数定義やif文、for文、内部関数の定義方法を備忘的に残します~](https://nakayama-tech.com/wp-content/uploads/2023/12/blog-20231227-1-thumb.jpg)
中山テック 代表の中山です。
さて、普段からVBAで開発している方は除きますが、たまにVBA使うと構文忘れる事ありませんか?
私は、よくあります(汗
という訳で今回は忘れっぽい中山テック代表向けにVBA構文を備忘的に残したいと思います。
参考になるのであれば是非ご覧ください。
![](https://nakayama-tech.com/wp-content/uploads/2023/12/blog-20231227-1-01-1024x527.jpg)
Dim 変数名 AS 型
型名 | 意味 |
Integer | -2,147,483,648 から 2,147,483,647 までの 符号付き 32 ビット (4 バイト) の整数を保持 |
String | 文字列。ダブルクォート("文字")で囲みます |
Date | 日付の型。前回のブログではセルに指定した 日付を格納するために使っていた |
Worksheet | Excelのシートオブジェクト。 主にシート内を検索するVBAを組む時に使ったり |
IF文
![](https://nakayama-tech.com/wp-content/uploads/2023/12/blog-20231227-1-02-1024x527.jpg)
IF 条件式(例:A=1とか) Then
【処理】
Else If(条件式) Then ←省略可
【処理】
Else ←省略可
【処理】
End If
条件分岐の際に使用します。
上記画像では指定の日付がFROMとTOの間に入っているかを判定しています。
2つの条件がある場合はAND(かつ)やOR(または)等を指定します。
IF ~ ThenとEnd Ifは必須で、Else IFやElseはなくても問題ありません。
FOR文
![](https://nakayama-tech.com/wp-content/uploads/2023/12/blog-20231227-1-03-1024x527.jpg)
FOR 開始条件(i=0とか) TO 終了条件(100とかループ回数)
【処理】
Next 開始条件の変数
指定回数分、ForとNext変数の間の処理を繰り返します(ループ)。
ForとNext変数はセットであると覚えて頂ければと。
始点と終点の間はTOでつなぐこともお忘れなく。
また、Forループを抜ける際は「Exit for」を定義します。
- 【JavaScript】ボタン押してダイアログ表示する方法~外タップで閉じる方法も~
- 【バックエンド開発】代表の実績や経験をご紹介すると共に得た知識を技術コラムとして執筆
- HDDとSSDの書き込み速度・読み込み速度比較した結果~内蔵でも簡単に交換可能~
- Excel(エクセル)で行を表示させない方法~グループ化らくらく非表示♪~
- 代表の技術遍歴をご紹介!~データベース編~
プロシージャ
Subプロシージャ
Sub プロシージャ名
【処理】
End Sub
![](https://nakayama-tech.com/wp-content/uploads/2023/12/blog-20231227-1-04-1024x573.jpg)
いわゆるmain関数と同じような感じで、始点に当たります(原点にして頂点)。
複数定義も可能で、マクロの実行の際にはそれぞれ独立して実行することが出来ます。
上記のa1cellプロシージャはA1セルに「Hello World」と入れるだけの簡単な処理です。
全てのシートで適用可能です。
![](https://nakayama-tech.com/wp-content/uploads/2023/12/blog-20231227-1-05-1024x649.jpg)
![](https://nakayama-tech.com/wp-content/uploads/2023/12/blog-20231227-1-06-1024x720.jpg)
Functionプロシージャ
![](https://nakayama-tech.com/wp-content/uploads/2023/12/blog-20231227-1-07-1024x573.jpg)
Function プロシージャ名(変数名 As 型) ※変数名はなくてもOK
プロシージャ名 = 返却値
End Function
![](https://nakayama-tech.com/wp-content/uploads/2023/12/blog-20231227-1-08-1024x500.jpg)
まとめ
備忘なのでメモ書きみたいになってすみません。
しかし、普段から使っていない場合の構文確認としては十分かと思います。
私と同じように毎日のように開発していない方がご覧になり「参考になった」と思って頂けたら幸いです。
最後までご覧いただき、ありがとうございました。