VBAのオブジェクト
言語としてのVBAは、初期型のVisual Basicが元になっていて最低限覚えておくべき事は以下のとおりです。
1.クラスモジュール、標準モジュール、ユーザーフォーム、ワークブック、ワークシートにコードを書くことができます。
・クラスモジュールは独自クラスを作ることはできるモジュールです。
・標準モジュールには、主に共用する処理を書きます。
・ユーザーフォームには独自ダイアログを作るコードを書きます。
・ワークブックには、Windowsを含むワークブックの操作をコードで行います。
・ワークシートワークシート操作をコードで行います。
2.変数に主には、
String (文字列型)、
int(16Bit)、long(32Bit) (整数型)、
Float(4Byte)、Double(8Byte) (浮動小数点型)、
Variant(どんな値でも入れることができる)型、
があります。
3.実際のプログラムは
1.で上げたオブジェクト内にsubプロシージャまたはfunctionプロシージャというコードを書きます。
sub プロシージャ名(引数名 as 型,・・・)
dim ローカル変数名 as 型、・・・
コード
end sub
または
function プロシージャ名(引数名 as 型,・・・) as 戻り値の型
dim ローカル変数名 as 型、・・・
コード
プロシージャ名 = 戻り値
end function
プロシージャや各モージュル内で宣言した変数は、それぞれPublicまたはPrivateという公開・非公開属性をつけて宣言することができます。
演算子
1.四則演算子
+は足し算、ーは引き算、*は掛け算、/は割り算
Mod は余りを計算する
2.べき乗
n ^ 3 は変数nの3乗
3.=は要注意
この後の制御文で使用される論理演算の場合は、左辺=右辺で等しいと言う条件値
左辺が変数名の場合は値を入れる代入演算子
4.論理演算
左辺 > 右辺は左辺が大きい場合True、
左辺 < 右辺は左辺が小さい場合True、
左辺>=右辺は右辺が左辺以下の場合True、
左辺<=右辺は右辺が左辺以上の場合True、
左辺 And 右辺は左辺と右辺がTrueの場合True、
左辺 Or 右辺は左辺か右辺がTrueの場合True、
制御文
制御分には If Then Else End If、For Next、Do Loop While
1.If
IF 論理演算 Then
論理演算がTrueの場合の処理
Else
論理演算がFalseの場合の処理
End If
IF 論理演算1 Then
論理演算1がTrueの場合の処理
ElseIf 論理演算2 Then
論理演算2がTrueの場合の処理
Else
論理演算1,2がFalseの場合の処理
End If
2.For
For 変数名=初期値 To 終了地 Step 幅
繰り返しコード
Next 変数名
For Each 変数名 in レンジや配列
繰り返しコード
Next 変数名
3.Do Loop While
Do While 論理演算
繰り返しコード
Loop
Do
繰り返しコード
Loop While 論理演算
Whileの場合は論理演算がTrueの間ループ
Untilの場合は論理演算がFalseの間ループ
ほかにもいろいろありますが、とりあえずこれぐらい覚えればプログラムは作れます。
基本学習
基本的な話はYouTubeで調べるとたくさん出てきます。
一例として・・・
https://www.youtube.com/playlist?list=PL5FKFa9bpZNF4LPhgvrQiGD59MNiN-4Sw