記号を使った「変数の宣言」について

今回の目標

  • 記号を用いた変数について知る

説明

長整数型の変数の宣言は一般的に「Dim 変数名 As Long」ですが、この方法以外にあります。 それが記号を使った変数の宣言です。
ただし、この方法は現在の実務ではほとんど使われません。 下位互換のために残っている仕様であり、知識としておさえておく程度で十分です。

変数表

型名通常記号
文字列型String$
整数型Integer%
長整数型Long&
単精度浮動小数点数型Single!
倍精度浮動小数点数型Double#
通貨型Currency@

使用例

下のサンプルを実行してください。TypeName関数は引数の変数の型の名前を返す関数です。vbNewLineは改行です。
'記号を用いた変数の宣言サンプル
Sub Sample_VariantSp1()
    Dim Str$    'String型
    Dim Num1%   'Integer型
    Dim Num2&   'Long型
    Dim Num3!   'Single型
    Dim Num4#   'Double型
    Dim Num5@   'Currency型
    
    MsgBox "Str の型名は、[" & TypeName(Str) & "]です。" & vbNewLine & _
     "Num1 の型名は、[" & TypeName(Num1) & "]です。" & vbNewLine & _
     "Num2 の型名は、[" & TypeName(Num2) & "]です。" & vbNewLine & _
     "Num3 の型名は、[" & TypeName(Num3) & "]です。" & vbNewLine & _
     "Num4 の型名は、[" & TypeName(Num4) & "]です。" & vbNewLine & _
     "Num5 の型名は、[" & TypeName(Num5) & "]です。"
End Sub

サンプルの実行結果は下記の画像の通りになります。
サンプル1の実行結果

記号を用いた変数の宣言で代入したサンプルです。 動作は "As 型名" を用いた場合と同じです。

'記号を用いた変数の宣言で、代入したサンプルです。
Sub Sample_VariantSp2()
    Dim Str$    'String型
    Str = "サンプル"
    MsgBox Str 
End Sub
実行結果は下記の画像の通りです。宣言時以外は、いつも通りですね。
サンプル2の実行結果

確認テスト

次の問いに答えなさい。

  1. [Dim AAA$]と宣言したとき、変数AAAは何型か。

    【解答】

    文字列型(String型)

  2. [Dim BBB%]と宣言したとき、変数BBBは何型か。

    【解答】

    整数型(Integer型)

関連リンク

ページの先頭へ