4章:変数の型と宣言

    作成2021/11/19

  1. 変数の宣言練習コードの作成
    (1)EXCEL2019を起動します。
    (2)新規_空白のブックを選択します。
    (3)開発タブをクリックして「Visual Basic」をクリックします。
    (4)「挿入」_「標準モジュール」を選択します。
    (5)以下のコードを貼付けます。
    Type myT
        Z(5) As Double
        iN As Integer
    End Type
    Dim myG As myT
    Sub Macro1()
        myG.iN = 4
        dp = 1
        Macro2
        Macro3
        dp = 4
    End Sub
    Sub Macro2()
        
        For i2 = 0 To myG.iN
            myG.Z(i2) = 0.1 * i2 * i2
        Next
        dp = 2
    End Sub
    Sub Macro3()
        For i3 = 0 To myG.iN
            Worksheets("Sheet1").Cells(i3 + 1, 1).Value = i3
            Worksheets("Sheet1").Cells(i3 + 1, 2).Value = myG.Z(i3)
            myG.Z(i3) = 0
        Next
        dp = 3
    End Sub
    

  2. 変数の宣言練習コードの実行
    (1)dp = 1の行をクリックします。
    (2)「デバッグ」_「ブレークポイントの設定/解除」を選択します。
    (3)同様に「dp = 2」と「dp = 3」と「dp = 4」をブレークポイントに設定します。
    (4)これで、ブレークポイントの設定ができました。
    (5)Macro1を実行するとdp=1で停止します。
    (6)「表示」_「ウォッチウインドウ」を選択します。
    (7)「デバッグ」_「ウォッチ式の追加」を選択します。
    (8)式に「myG」を入力して、「OK」ボタンを押します。
    (9)「myG」を展開します。
    (10) 「ウォッチウインドウ」には以下のように表示されます。



    (11)継続ボタンを押すと、dp=2で停止します。
    (12)「デバッグ」_「ウォッチ式の追加」を選択します。
    (13)式に「i2」を入力して、「OK」ボタンを押します。
    (14)「ウォッチウインドウ」は以下のようになります。



    (15)変数i2の値が確認できます。
    (16)継続ボタンを押すと、dp=3で停止します。
    (17)「デバッグ」_「ウォッチ式の追加」を選択します。
    (18)式に「i3」を入力して、「OK」ボタンを押します。
    (19)「ウォッチウインドウ」は以下のようになります。



    (20)変数i2は対象範囲外となり、変数i3の値が確認できます。
    (21)継続ボタンを押すと、dp=3で停止します。
    (22)「ウォッチウインドウ」は以下のようになります。



    (23)変数i2と変数i3は対象範囲外となります。
    (24)継続ボタンを押すと、Macro1は終了します。
    (25)Book1のSheet1は、以下のようになります。




  3. 宣言コードの種類と意味
    (1)宣言コードには「Dim」と「Private」と「Public」と「Static」の4種類があります。
    (2)「Dim」と「Private」は同じ意味をもつため、実質は「Dim」と「Public」と「Static」の3種類です。
    (3)サブルーチンやファンクションの動作単位をプロシージャといいます。
    (4)プロシージャ内で変数の宣言をしますとローカル変数となり、プロシージャ内でのみ有効です。
    (5)モジュールの先頭で変数を宣言しますとグローバル変数となります。
    (6)モジュールの先頭で宣言できるのは、「Dim」と「Public」です。
    (7)「Dim」の宣言は宣言したモジュール内で有効です。
    (8)「Public」は複数の全てのモジュール内で有効です。
    (9)モジュールが一つの場合は、「Dim」と「Public」が同じ結果となります。
    (10)プロシージャ内では、「Dim」と「Static」の宣言が使われます。
    (11)プロシージャ内「Dim」宣言の場合、プロシージャが終了すると変数の値が消えます。
    (12)プロシージャ内「Static」宣言の場合、プロシージャが終了しても変数の値が残ります。
    (13)プロシージャ内宣言の場合、「Dim」が推奨です。

  4. 宣言コードのまとめ
    (1)実用的には、変数の宣言は「Dim」だけで問題ありません!!
    (2)グローバル変数はモジュールの先頭での宣言が不可欠です。
    (3)プロシージャ内変数は、変数の宣言を省略しても問題ありません。
    (4)プロシージャ内で変数の宣言を省略した場合、変数の型はVariant(バリアント型)となります。
    (5)Variant(バリアント型)は実行時にデータ型を自動判別するため、ほとんどのデータ型を扱えます。

  5. Integer(整数型)
    -32,768から32,767の整数

  6. Long(長整数型)
    -2,147,483,648から2,147,483,647の整数

  7. Single(単精度浮動小数点型)
    -3.402823E38から-1.401298E-45
    1.401298E-45から3.402823E38

  8. Double(倍精度浮動小数点型)
    -1.79769313486231E308から-4.94065645841247E-324
    4.94065645841247E-324から1.79769313486232E308

  9. Currency(通貨型)
    -922,337,203,685,477.5808から922,337,203,685,477.5807

  10. String(文字列型)
    文字列

  11. Date(日付型)
    西暦100年1月1日から西暦9999年12月31日 (日付と時刻)

  12. Byte(バイト型)
    0から255の正の整数

  13. Boolean(ブール型)
    True または False

  14. Object(オブジェクト型)
    オブジェクト参照するデータ型

  15. Variant(バリアント型)
    あらゆる種類の値を保存できる型

  16. 任意の名前(ユーザー定義型)
    ユーザが自由に定義した変数の組み合わせの型
    (サンプルプログラムでは「myT」です。)


  17. 配列
    (1)サンプルプログラムでは「Z(5) As Double」として1次元配列を定義しています。
    (2)2次元配列では、「Z(5,5) As Double」となります。
    (3)3次元配列では、「Z(5,5,5) As Double」となります。



5章:条件分岐のステートメントに行く。

トップページに戻る。