_基本

定数を使用する【Constステートメント】【ExcelVBA】

構文

Const 定数名 As データ型 =

定数名・・・・・変数のように任意の名前をつけます。
データ型・・・・変数のデータ型と同様に指定します。
・・・・・・・変数のように持たせたいを入力します。値は一度設定すると変更できません。

定数の仕組みがよくわからない。変数で代用できると思われている初心者の方もいますが、
知らず知らずのうち、定数を使用していると考えます。
それは、システムで用意されている定数一覧カラー用の定数罫線用の定数等、使った事ありませんか?

定数を使用するサンプルコード

Const AAA As String = "同じモジュール内で使用可能"
Public Const BBB As String = "全てのモジュール内で使用可能"

Public Sub sample1()
    Const CCC As String = "同じプロシージャ内で使用可能"
    
    MsgBox AAA  '"同じモジュール内で使用可能"
    MsgBox BBB  '"全てのモジュール内で使用可能"
    MsgBox CCC  '"同じプロシージャ内で使用可能"
End Sub
Public Sub sample2()
    MsgBox AAA  '"同じモジュール内で使用可能"
    MsgBox BBB  '全てのモジュール内で使用可能"
    MsgBox CCC  '""(プロシージャをまたがっているため使用不可)
End Sub

注意点

  • 変数を定数代わりに使用することは、もちろん可能です。
  • それでも定数を利用するメリットは可読性の向上保守のしやすさです。
    (例)消費税率が変わるたびにコード全て見直すのは馬鹿らしくないですか?
  • 定数は TAX_RATE や USER_NAME と全角文字で記載するのが一般的です。(昔からの名残?です)

関連記事

コメント

タイトルとURLをコピーしました