EB000012_VBAエキスパート(ExcelVBAベーシック)合格講座/第十二回:リテラル

VBAエキスパート(ExcelVBAベーシック)合格講座/第十二回:リテラル ExcelVBA Basic

このページの内容について

このページは、VBAエキスパート(ExcelVBAベーシック)試験合格講座の第十二回記事です。公式テキスト第5章「変数と定数」の内容について解説します。自分でも手を動かしながら読み進めてください。

リテラルとは

リテラルとはコードに直接入力される値のことです。マクロのコードには、数値や文字列、日付などのデータを直接記入して、計算をしたりメッセージを表示させたりすることができます。記述方法にはそれぞれルールがあります。

数値

Excelの関数に入力する場合と同様に、数値はそのまま入力します。小数点も入力できます。

サンプルコード(クリックでコピー)

Private Sub Test_Numeric()

Debug.Print 100
Debug.Print 3.14

End Sub

実行結果

上記サンプルコードを実行すると、イミディエイトウィンドウに「100」と出力されます。

「Debug.Print」はそのあとに記述した内容をイミディエイトウィンドウに出力します。以後、多用します。

文字列

文字列もExcelの関数の記述と同じです。「”(ダブルクォーテーション)」で囲います。

サンプルコード(クリックでコピー)

Private Sub Test_String()

Debug.Print "VBA.funcref()"

End Sub

実行結果

上記サンプルコードを実行すると、イミディエイトウィンドウに「VBA.funcref()」と出力されます。ダブルクォーテーションを外して実行すると文字列とみなされずエラーになります。

日付

日付の表現はExcelとは異なります。「#(シャープ)」で囲います。

サンプルコード(クリックでコピー)

Private Sub Test_Date()

Debug.Print #12/25/2022#
Debug.Print "2025/12/25"

End Sub

実行結果

上記サンプルコードを実行すると、イミディエイトウィンドウに「2025/12/25」と2回出力されます。シャープを外して実行すると日付とみなされずエラーが発生します。

日付データは日本表記の日付と異なりますが、日本表記で入力しても入力後にVBEが自動補正してくれます。「#2025/12/25#」⇒「#12/25/2022#」

真偽値

真偽値とは「True」か「False」のことです。真偽値はそのまま入力します。

サンプルコード(クリックでコピー)

Private Sub Test_Boolean()

Debug.Print True
Debug.Print False

End Sub

実行結果

上記サンプルコードを実行すると、イミディエイトウィンドウに「True」「False」と出力されます。

【PR】VBAエキスパート試験対策記事

当サイトでは、オデッセイコミュニケーションズ社が運営する試験であるVBAエキスパートExcel VBA ベーシックExcel VBA スタンダード)の出題範囲をベースに用語や各種関数の解説などを行っています。試験合格に向けて必須と言われる公式テキストに沿って解説をしています。受験をするか悩んでいる方、テキストとは別視点の解説を見てみたい方、受験はしないがExcelVBA(マクロ)に興味がある方へ向けた記事です。

Comment