VBA: 構造体を使った配列、動的に増やす

構造体(クラス)と配列って、基本だと思うんだけど、、

開発経験が15年オーバの社員が 解ってない衝撃、、で、メモを残す、、

Private Type typ支給UP群
    ID                  As Byte
    UP単位              As Currency
    UP金額              As Currency
    上限金額_無資格者   As Currency
    上限金額_有資格者   As Currency
    UP金額first         As Currency
End Type

'---

Dim tbl支給UP群()       As typ支給UP群
Dim tbl支給UP群_MAX     As Integer

'--- tbl支給UP群を初期化する。

public sub initWk()

    '------------------------------------
    Erase tbl支給UP群   ’ 配列の初期化
    tbl支給UP群_MAX = 0
    
    Set RsMST = GFC_GetRs(cn, False, "select * FROM m支給UP群")

    Do While Not RsMST.EOF
        tbl支給UP群_MAX = tbl支給UP群_MAX + 1
        ReDim Preserve tbl支給UP群(tbl支給UP群_MAX)  ’配列を1つ拡張する。

        With tbl支給UP群(tbl支給UP群_MAX)
            .ID = RsMST!ID
            .UP単位 = RsMST!UP単位
            .UP金額 = RsMST!UP金額
            .UP金額first = RsMST!UP金額first
            .上限金額_無資格者 = RsMST!上限金額_無資格者
            .上限金額_有資格者 = RsMST!上限金額_有資格者
        End With
        
        RsMST.MoveNext
    Loop
    RsMST.Close

End sub

行数が増えるから、withってあまり使いたくない、、 当然、要素数が最初から分かっている場合は、事前確保しておく方が性能はよい、、 recordset.countってスナップショットタイプしか取得れなかったかな?

/* -----codeの行番号----- */