前のチュートリアルで述べたように、1行のコードは1つのステートメントです。 では、VBAのステートメントは一体何ですか?ステートメントにはどのような基本構造が含まれますか?ステートメントと条件式にはどんな関係がありますか?次のチュートリアルに詳しく説明します。
目次
条件式
まず、ステートメントより小さいコードの構造は条件式です。 文字通りで、条件式は2つの部分に分けられます。条件と式です。組み合わせると、一つの数式で対応する値を表します。
VBAでは、1つの値を返すコードの部分は条件式と呼ばれます。
最も簡単なデータを書き出されると、条件式となります。返す値はデータの値です。(例えば、“100”という条件式は“100”を返します)
100 '=> 100
"Hello World" '=> Hello World
True '=> True
#2018-11-1# '=>2018-11-1
条件式も、複数のデータ間の演算条件式になることもあります。例えば、算術演算、論理演算、連接演算などです。
1+2 '=> 3
10 > 5 '=> True
"Hello" & "World" '=> Hello World
さらに、条件式も複数の条件式の間の演算条件式となります。この場合に、演算の順次を確保するために、複数の条件式が()で囲まれていることが一般的です。
Not (10 > 5) '=> False
(1 + 2) - (10 - 5) '=> -2
VBA関数の使用も条件式の1つです。例えば、Left関数は、文字列の左側から指定した文字数を返します。
Left("Hello World", 5) '=> Hello
Abs(-10) '=> 10
Year(#2018-11-1#) '=> 2018
もちろん、一番重要なのは、条件式に変数を使用できることです。
Dim place As String
place = "World"
"Hello" & place '=> Hello World
Left(place, 3) '=> Wor
ステートメント
プログラミングでは、条件式だけでは何もできません。条件式を他の要素と組み合わせてステートメントにする必要があります。
VBAでは、1つのステートメントは1つの完全なコマンドです。 キーワード、演算子、変数、定数、および条件式を含めます。
ステートメントには、次の3つの種類があります。
- 宣言ステートメント、プロシージャ、変数、プロパティ、配列、および定数を宣言します。
- 実行可能なステートメント、アクションが実行されます。例えば、プロシージャ、反復または選択条件式です。
- 代入ステートメント、変数に値を割り当て、実行可能なステートメントの特別な形式です。
次には三つのステートメントを説明します。
宣言ステートメント
他の記事では、多くの宣言ステートメントを見てきました。 宣言ステートメントは、新しい変数(形式を含む)を宣言するために使用されます。例えば、プロシージャ、関数、オブジェクト、配列などです。
次のコードをご覧ください。
Sub MyCode()
Dim name As String
Dim age As Integer
End Sub
このコードでは、最初のステートメントは最初の行であり、1つのVBAプロシージャを宣言します。 宣言プロシージャはSubで始まり、その後にプロシージャ名()が続きます。 最後の行はプロシージャのEndステートメントで、つまりEnd Subです。
次は、変数を宣言する2つのステートメントのnameとageであり、そして、種類はステートメントで指定されました。
実行可能なステートメント
実行可能なステートメントはアクションを実行します。例えば、プロシージャ、反復または選択条件式です。
代入ステートメントを例としてコードを見てください。
Sub MyCode()
Dim name As String
Dim age As Integer
name = "本田"
age = 28
If age > 25 then
MsgBox name & " 25歳以上の場合。"
End If
End Sub
このコードでは、Ifステートメントはage変数が25より大きいかどうかを判別します。そうである場合、If … End Ifの間のコードが実行されます。そうでない場合、スキップされて実行されません。この中のIf … End Ifは代入ステートメントです。
このような代入ステートメント、VBA構文の最も重要な部分であり、次のチュートリアルに詳しく説明します。
代入ステートメント
代入ステートメントとは、変数に値を割り当て、実行可能なステートメントの特別な形式です。
代入ステートメントでは、代入演算子 「= 」の右辺の値を取り、左側の要素に格納することで構成される代入演算を実行します。
また上記のコードを見てください。今回は代入ステートメントを追加します。
Sub MyCode()
Dim name As String
Dim age As Integer
name = "本田"
age = 28
End Sub
name = “本田”とage = 28は代入ステートメントであることがはっきりです 。
また、VBAの変数は重複に割り当てることができ、その値は最後の割り当てられた値であることに注意すべきです。 これは、実際のVBA開発で非常に役立ちます。
ステートメントを書くための2つのテクニック
演算子に関わる記事で、2つの演算子について簡単に説明しました。1つは英語のコロン(:)で、もう1つは下線(_)です。
演算子 | 说明 |
: (英語のコロン) | 2行のコードを1行に配置します |
_ (下線) | 1行のコードを2行に分けます |
: (英語のコロン)
通常、1行に複数のステートメントが配置されている場合、VBAはエラーを報告します。 1行に配置する場合は、複数のステートメントを:(英語のコロン)で連接する必要があります。
Sub MyCode()
Dim name As String : Dim age As Integer
End Sub
_ (下線)
逆に、ステートメントが長すぎる場合は、分ける必要があるかもしれません。 ステートメントをenterキーを使用して複数の行に直接分けると、VBAもエラーを報告します。 このとき、改行のところに(スペース+ _)を入力する必要があります。
Sub MyCode()
Dim name As String
name = "Hello" & _
"World"
End Sub
まとめ
条件式は値を返す式であり、ステートメントは完全なコマンドです。 ステートメントには、次の3つの種類が含まれます。
- 宣言ステートメント、プロシージャ、変数、プロパティ、配列、および定数を宣言します。
- 実行可能なステートメント、アクションが実行されます。例えば、プロシージャ、反復または選択条件式です。
- 代入ステートメント、変数に値を割り当て、実行可能なステートメントの特別な形式です。
VBAでは、条件式とステートメントをさまざまな形式で組み合わせて使用し、複雑な計算と操作を実現します。 次の記事では、宣言と割り当てについて説明します。
コメントを残す