VBA定数(定数)とは何ですか?
変数は、あらゆるプログラミング言語の核心です。プロジェクトやプログラムの変数に依存しないコーダーや開発者を見たことがありません。私もコーダーとして他の人と変わらないので、99%の確率で変数を使用しています。私たちは皆、VBA変数を宣言する「Dim」ステートメントを使用しています。これらすべての記事で、「Dim」ステートメントを使用した変数の宣言について説明しました。ただし、別の方法を使用して変数を宣言します。この記事では、変数を宣言する別の方法、つまり「VBA定数」メソッドを紹介します。
「const」は、VBAの「Constants」を表します。VBAの「Const」という単語を使用すると、「Dim」キーワードを使用して変数を宣言するのと同じように変数を宣言できます。この変数は、モジュールの先頭、モジュール間、vbaおよび関数プロシージャの任意のサブルーチン、およびクラスモジュールで宣言できます。
変数を宣言するには、「Const」という単語を使用して定数値を宣言する必要があります。変数が宣言されて値が割り当てられると、スクリプト全体で値を変更することはできません。
VBAのConstステートメントの構文
Constステートメントは、「Dim」ステートメントとは少し異なります。それをよりよく理解するために、VBAConstステートメントの適切に記述された構文を見てみましょう。
Const [変数名] As [データ型] = [変数値]- Const:この単語を使用して、定数を宣言するプロセスを初期化します。
- 変数名:これは、変数に名前を付けるのと同じです。変数名ではなく定数名と呼びます。
- データ型:宣言された変数が保持する値の種類。
- 変数名:次の最後の部分は、宣言した変数に割り当てる値です。割り当てられる値は、データ型ごとである必要があります。
VBAの定数の条件
- 宣言する定数の名前には、最大256文字の長さを含めることができます。
- 定数の名前を数字で始めることはできません。アルファベットで始める必要があります。
- 定数を宣言するためにVBA予約キーワードを使用することはできません。
- 定数名には、アンダースコア文字以外のスペースや特殊文字を含めないでください。
- 1つのステートメントで複数の定数を宣言できます
VBAのConstステートメントの例
VBAConstステートメントを使用して最初の変数を宣言しましょう。サブプロシージャレベル、モジュールレベル、およびプロジェクトレベルでも定数を宣言できます。
次に、サブプロシージャレベルで宣言する方法を見てください。
上記の例では、定数「k」はConst_Example1()という名前のサブプロシージャ内で宣言されています。そして、値を75として割り当てました。
ここで、モジュールレベルの定数宣言を見てください。
モジュールの上部で、モジュール「モジュール1」で3つの定数を宣言しました。
これらのVBA定数は、「モジュール1」で、このモジュール内の任意の数のサブプロシージャ、つまり「モジュール1」でアクセスできます。
モジュール間で定数を使用できるようにする
定数がVBAクラスモジュールの先頭で宣言されると、すべてのサブプロシージャを使用してモジュール内の定数にアクセスできます。
しかし、どうすればワークブックのすべてのモジュールでそれらを利用できるようにすることができますか?」
モジュール間で利用できるようにするには、「パブリック」という単語で宣言する必要があります。
これで、上記の変数はモジュール1で使用できるだけでなく、モジュール2でも使用できます。
VBAのDimステートメントとConstステートメントの違い
VBAの従来の「Dim」ステートメントと新しい「Const」ステートメントの違いは何か疑問があるはずです。
これらとの違いが1つあります。つまり、下の画像を見てください。
最初の画像では、変数を宣言するとすぐに、いくつかの値を割り当てました。
しかし、最初に「Dim」ステートメントを使用した2番目の画像では、変数を宣言しています。
変数を宣言した後、異なる行に個別に値を割り当てました。
これは、VBAの「Const」ステートメントを使用して定数を宣言する方法です。これは、「Dim」ステートメントで変数を宣言するのと同様の方法です。