特殊な変数の宣言について

今回の目標

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

    以前、変数を学んだ際に長整数型の変数の宣言は「Dim 変数名 As Long」と説明しましたが、これ以外にもあります。記号を使っての宣言です。IT企業でも変数の宣言をこの方法で行うことはありません。知識として知っておけば問題ありません。この宣言自体、下位互換のために残しているのかもしれません。

    変数表

    型名通常記号
    文字列型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は何型か。
    2. [Dim BBB%]と宣言したとき、変数BBBは何型か。
    解答1 解答2

    関連リンク

    ページの先頭へ