このサイトの記事内では「アフィリエイト広告」などの広告を掲載している場合があります。
消費者庁が問題としている「誇大な宣伝や表現」とならないよう配慮しコンテンツを制作しておりますのでご安心ください。
問題のある表現が見つかりましたらお問い合わせよりご一報いただけますと幸いです。

【VBA】構造体の基本と用途を紹介(Type)

他のプログラミング言語と同じようにVBAにも構造体(Type)が存在します。
ただ、VBAから使い始めた人にはあまりピンとこない機能かもしれません。

構造体は、複数の値をまとめて管理することができる機能です。

複数の値をまとめる機能には配列がありますが、構造体は複数のデータ型をまとめることができます。

今回はこの構造体の基本的な書き方とその用途を紹介したいと思います。

VBAが難しいと感じたら
VBAのプロに代わりに作ってもらうのはいかがでしょうか?
ココナラでVBAの作成請負を受け付けています。お気軽にご相談ください。

構造体の基本的な書き方と用途

''構造体の宣言
Type Employee
    ID As Integer
    Name As String
    ' 他のメンバ変数を必要に応じて追加
End Type

構造体はTypeステートメントで宣言します。
(サンプルコードではEmployeeという名前の構造体を宣言しています)

Type~End Typeまでが構造体の宣言で、この間に変数宣言ができます。
(サンプルコードではID、Name)

構造体はここで宣言した変数をまとめて保持することができます。

Sub UseSample1()
    ''構造体の使用する側
    
    ''構造体の変数宣言
    Dim emp As Employee
    
    ''メンバ変数に値を代入
    emp.ID = 1
    emp.Name = "John"
End Sub

構造体を使用する際は、まず宣言した構造体名の変数を作成します。
(サンプルコードではDim emp as Employeeの部分)

後は、変数名.メンバ変数=~として値を代入するだけです。

これで構造体empで複数の値を一括して管理することができます。

Sub UseSample2()
    ''構造体の使用する側
    
    ''構造体の変数宣言
    Dim emp1 As Employee, emp2 As Employee
    
    ''メンバ変数に値を代入
    emp1.ID = 1
    emp1.Name = "John"
    emp2.ID = 2
    emp2.Name = "Carl"
End Sub

構造体の変数は1つだけでなく、このようにいくつでも作成できます。

構造体は、社員情報のように同じデータ構造を何個も扱うときに力を発揮します。

VBAが難しいと感じたら
VBAのプロに代わりに作ってもらうのはいかがでしょうか?
ココナラでVBAの作成請負を受け付けています。お気軽にご相談ください。

VBA

Posted by やろまい