|
VBAの記法としては、ご希望のものはありませんので、事前の策として作ってやるということで、
まず、Quizesという名前のモジュールを作って以下のようにします。
======
Option Explicit
Public Type Quiz
mondai As String
kaito As String
message As String
End Type
Dim QTable() As Quiz
Dim Index As Long
Sub Init()
Index = -1
End Sub
Sub Add(mondai As String, kaito As String, message As String)
Dim q As Quiz
q.mondai = mondai
q.kaito = kaito
q.message = message
Index = Index + 1
ReDim Preserve QTable(Index)
QTable(UBound(QTable)) = q
End Sub
Function Item(Index As Long) As Quiz
Item = QTable(Index)
End Function
Function Count() As Long
Count = Index + 1
End Function
'==========ここまで
以下がその使用例のマクロです。
Sub testQ()
Quizes.Init
'この辺が初期値の設定コード
Quizes.Add "問題1", "回答1", "メッセージ1"
Quizes.Add "問題2", "回答2", "メッセージ2"
Quizes.Add "問題3", "回答3", "メッセージ3"
Quizes.Add "問題4", "回答4", "メッセージ4"
Quizes.Add "問題5", "回答5", "メッセージ5"
'設定した値の使い方。
Dim i As Long
For i = 0 To Quizes.Count - 1
Dim q As Quiz
q = Quizes.Item(i)
Debug.Print i, q.mondai, q.kaito, q.message
Next
End Sub
|
|