10-22-2024, 03:57 PM
I'm uncomfortable with it. Data is good for a hard-coded part of the program where nothing will change. But - during development, who never changed anything? I like the solution with an array and a function that returns it all as a result much better, even if it takes more time to write the function. Something like this:
Code: (Select All)
Type Record
As Integer number
As String text1, text2
End Type
ReDim Shared Rec(0) As Record
Dim Values(1 To 4) As Integer
Values(1) = InitRecord(1, "one", "the first")
Values(2) = InitRecord(2, "two", "the second")
Values(3) = InitRecord(3, "three", "the third")
Values(4) = InitRecord(4, "four", "the forth")
For Show = 1 To 4
PrintRecord Show
Next
Erase Rec
Erase Values
End
Function InitRecord (number As Integer, t1 As String, t2 As String)
U = UBound(Rec) + 1
ReDim _Preserve Rec(U) As Record
Rec(U).number = number
Rec(U).text1 = t1
Rec(U).text2 = t2
InitRecord = U
End Function
Sub PrintRecord (Id As Integer)
Print Rec(Id).number, Rec(Id).text1, Rec(Id).text2
End Sub