Type


Typeステートメント

構文

[Private|Public] Type varname

elementname[([subscripts])] As type

End Type

キーワードPublicは省略可能です。すべてのモジュールから参照できるユーザー定義型を宣言します。

キーワードPrivateは省略可能です。Typeステートメントを記述したモジュールからのみ参照できるユーザー定義型を宣言します。

varnameには、ユーザー定義型の名前を指定します。

elementnameには、ユーザー定義型を構成する要素の名前を指定します。

subscriptsは省略可能です。配列変数の次元を指定します。

typeには、ユーザー定義型を構成する要素のデータ型を指定します。

解説

ユーザー定義のデータ型を作成します。

Typeステートメントは、プロシージャレベルで使用します。

標準モジュール内で宣言したユーザー定義型は、規定ではパブリックになります。クラスモジュール内で宣言したユーザー定義型は、どんなときもプライベートになります。

サンプル

次の例は、ユーザー定義型を宣言してユーザー定義型の変数を作成します。

Private Type myType
    myValue As Integer
    myString As String
End Type
Sub Sample()
    Dim myData(3) As myType, i As Integer, msg As String
    For i = 0 To 2
        myData(i).myValue = i * 100
        myData(i).myString = "test" & i
    Next i
    For i = 0 To 2
        msg = msg & myData(i).myValue & Chr(9) & myData(i).myString & vbCrLf
    Next i
    MsgBox msg
End Sub