人力検索はてな
モバイル版を表示しています。PC版はこちら
i-mobile

Excel VBAについての質問です。

要素数未定の配列を用意するときには、とりあえずDimで配列宣言して、要素数が確定し次第Redim、となりますよね。

これに類似のことを、要素数未定のユーザー定義型(構造体)で行うにはどうしたらよいのでしょうか?

例えば以下のような点で悩んでしまっています。
--------------------
Type hoo
b() As Boolean 'ここは要素数未定でも通る
c As Long
End Type

Sub main()
Dim bar() As hoo
a = 3
ReDim bar(a) 'このReDimも通る
bar(i).b(j) = True 'このjに相当する部分の上限値の設定方法がわからない
End Sub
--------------------
わかる方がいましたらよろしくお願いします。

●質問者: oich
●カテゴリ:コンピュータ
✍キーワード:AS BAR Excel sub Sub Main
○ 状態 :終了
└ 回答数 : 2/2件

▽最新の回答へ

1 ● TONTON3
●20ポイント

ReDim bar(i).b(20)

ということでしょうか?


2 ● SALINGER
●50ポイント ベストアンサー

こんな感じです。

Sub main()
 Dim bar() As hoo
 Dim i As Integer
 Dim j As Integer
 
 a = 3
 b = 5
 ReDim bar(a)
 For i = 0 To a
 For j = 0 To b
 ReDim bar(i).b(b)
 bar(i).b(j) = True
 Next j
 Next i
End Sub
◎質問者からの返答

ドンぴしゃではなかったのですが、理解できました!

ReDimの場所を変えて、これならうまくいきました。

Sub main()

Dim bar() As hoo

Dim i As Integer

Dim j As Integer

a = 3

b = 5

ReDim bar(a)

For i = 0 To a

ReDim bar(i).b(b)

For j = 0 To b

bar(i).b(j) = True

Next j

Next i

End Sub

ありがとうございました!

関連質問


●質問をもっと探す●



0.人力検索はてなトップ
8.このページを友達に紹介
9.このページの先頭へ
対応機種一覧
お問い合わせ
ヘルプ/お知らせ
ログイン
無料ユーザー登録
はてなトップ