_基本

【VBA基本】Constでの定数宣言と定数一覧

定数とは?

定数は変数と同じような仕組みですが、コード中に変更ができない固定の値(数値や文字列)です。
コード中で変更しない固定の値(数値や文字列)は変数ではなく、定数に入れましょう。

定数の記載方法


Const NORMAL_TAX As Double = 0.1   '通常税率
Const REDUCED_TAX As Double = 0.08 '軽減税率

Public Sub test()
 
    MsgBox "2019年10月1日より" & vbCrLf & _
           "通常税率は " & NORMAL_TAX * 100 & "%" & vbCrLf & _
           "軽減税率は " & REDUCED_TAX * 100 & "%"
 
End Sub

定数のコード結果

定数は変数と同じように、計算やその値を変数に代入して使用可能です。
税率や利益率等大きく変わらないような値を固定で入力し、時代が変わった時にすぐに修正できるようなものを定数で宣言すべきです。仮に定数を使わず、コード上で税率や利益率を直で入力していると、修正も容易ではありません。

特別な定数

上記例で記載している「vbCrLf 」のような、ユーザーが定義する定数以外にもシステムに既に存在する特別な定数もあります。ユーザーは、組み込み定数と同じ名前の定数を作成できません。

また定数全てではありません。業務での使用頻度が高いものをまとめています。

グループ 定数 内容
MsgBox
ボタン用定数
vbOKOnly 0 [OK]
vbOKCancel 1 [OK] [キャンセル]
vbAbortRetryIgnore 2 [中止] [再試行] [無視]
vbYesNoCancel 3 [はい] [いいえ] [キャンセル]
vbYesNo 4 [はい] [いいえ]
vbRetryCancel 5 [再試行] [キャンセル]
vbDefaultButton1 0 標準ボタンを第1ボタンにする
vbDefaultButton2 256 標準ボタンを第2ボタンにする
vbDefaultButton3 512 標準ボタンを第3ボタンにする
vbDefaultButton4 768 標準ボタンを第4ボタンにする
MsgBox
メッセージ用定数
vbCritical 16 警告メッセージ アイコン
vbQuestion 32 問い合わせメッセージ アイコン
vbExclamation 48 注意メッセージ アイコン
vbInformation 64 情報メッセージ アイコン
MsgBox
その他定数
VbMsgBoxSetForeground 65536 最前面のウィンドウとして表示
vbApplicationModal 0 アプリケーションモーダル
MsgBoxに応答するまで選択中のコード実行ができない
vbSystemModal 4096 システム モーダルに設定します。
Msgboxに応答するまで選択中のコード実行を中断
vbMsgBoxHelpButton 16384 ヘルプ ボタンを追加します。
MsgBox
戻り値用定数
vbOK 1 [OK]を押した
vbCancel 2 [キャンセル]を押した
vbAbort 3 [中止]を押した
vbRetry 4 [再試行]を押した
vbIgnore 5 [無視]を押した
vbYes 6 [はい]を押した
vbNo 7 [いいえ]を押した
改行等の
その他定数
vbCrLf Chr(13)+Chr(10) キャリッジリターン/ラインフィードの組合わせ
vbCr Chr(13) キャリッジリターン文字
vbLf Chr(10) ラインフィード文字
vbNewLine Chr(13)+Chr(10)
または
Chr(13)
※MacではChr(13)
プラット フォームで指定した改行文字。
使用中のプラット フォームで適切なものを使用する。
vbTab Chr(9) タブ文字
vbBack Chr(8) バックスペース文字
色の定数 vbBlack 0x0
vbRed 0xFF
vbGreen 0xFF00
vbYellow 0xFFFF
vbBlue 0xFF0000
vbMagenta 0xFF00FF マゼンタ
vbCyan 0xFFFF00 シアン
vbWhite 0xFFFFFF
システム
カラー
定数
vbScrollBars 0x80000000 スクロール バーの色
vbDesktop 0x80000001 デスクトップの色
vbActiveTitleBar 0x80000002 アクティブ ウィンドウのタイトル バーの色
vbInactiveTitleBar 0x80000003 非アクティブ ウィンドウのタイトル バーの色
vbMenuBar 0x80000004 メニューの背景色
vbWindowBackground 0x80000005 ウィンドウの背景色
vbWindowFrame 0x80000006 ウィンドウのフレーム色
vbMenuText 0x80000007 メニューの文字色
vbWindowText 0x80000008 ウィンドウの文字色
vbTitleBarText 0x80000009 キャプション文字/サイズ ボックス/スクロール矢印色
vbActiveBorder 0x8000000A アクティブ ウィンドウの境界色
vbInactiveBorder 0x8000000B 非アクティブ ウィンドウの境界色
vbApplicationWorkspace 0x8000000C マルチ ドキュメント インターフェイス
(MDI)アプリケーション背景色
vbHighlight 0x8000000D コントロールで選択された項目の背景色
vbHighlightText 0x8000000E コントロールで選択された項目の文字色
vbButtonFace 0x8000000F コマンド ボタンの表面の立体的な表示の色
vbButtonShadow 0x80000010 コマンド ボタンの端の立体的な表示の色
vbGrayText 0x80000011 淡色表示 (無効) の文字色
vbButtonText 0x80000012 プッシュボタンの文字色
vbInactiveCaptionText 0x80000013 非アクティブキャプションの文字色
vb3DHighlight 0x80000014 3D で最も明るく表示する要素の色
vb3DDKShadow 0x80000015 3D で最も暗く表示する要素の影の色
vb3DLight 0x80000016 vb3Dhighlight の後の2番目に明るく表示する要素の色
vbInfoText 0x80000017 ツールヒントの文字色
vbInfoBackground 0x80000018 ツールヒントの背景色

 

コメント