たま氏の覚え書き

KNIME・AccessVBA・Swift等、学習したことを覚え書き

AccessVBA_ユーザー定義型の活用

ユーザー定義型について解説

ユーザー定義型とは

ユーザ定義型変数に配列を持たせることで、格納した要素ごとにデータ型を設定できる
Typeステートメントを使用し、標準モジュール内の宣言セクションで定義
ユーザー定義型変数は適用範囲を指定することも可能だが、既定でPublicとなっているため プライベートにしたい場合には定義の際に「Private Type」のように頭に「Private」をつける

記述方法

構文

1.定義
 Type ユーザー定義型名
  要素名1 As データ型A
  要素名2 As データ型B
  ・
  ・
  ・
 End Type

2.ユーザー定義型変数の宣言
 Dim ユーザー定義型変数 As ユーザー定義型名
配列を持たせる場合はDim ユーザー定義型変数() As ユーザー定義型名

3.値の設定
 ユーザー定義型変数 . 要素名 = 値

4.値の代入
 変数 = ユーザー定義型変数 . 要素名


記述例


▼定義の記述例▼

Type User_Definition_test() '宣言セクションに記述
 PostCode As Long
 Prefecture As String
End Type


▼ユーザー定義型変数の宣言の記述例▼

Dim AddressVar() As User_Definition_test '宣言セクションに記述


▼値の設定・取得の記述例▼

Sub AddressList_test()
 Dim i As Long
 Hyouji As String

 For i = 0 To 5
  AddressVar(i).PostCode = "0001111" '値を設定
  AddressVar(i).Prefecture = "北海道"
 Next i 

 For i = 0 To 5
  Hyouji = AddressVar(i).PostCode '値を代入、無理があるが…
  Debug.Pring Hyouji
 Next i 

End Sub

なんか例がイマイチだな…