03-01-2008 04:06 AM
03-02-2008 01:52 AM - edited 03-02-2008 01:53 AM
Hallo Markus!
Das grundsätzliche Problem liegt wohl darin das der ReDim Befehl nur direkt auf eine Variable funktioniert. Etwas in der Art ReDim oMyObject.avMyArray(10) geht deshalb nicht (egal ob SUD oder nicht).
Was ist nun die Lösung? Da gibt es zwei Möglichkeiten:
1. Man kann der Klasse eine Methode geben, bei dir z.B.:
Class cData ' Klasse
Dim Valve(12) ' feste Größe
Dim System()
Public Sub ReDimSystem(ByRef nCount)
Redim System(nCount)
End Sub
End Class
und diese dann im SUD aufrufen.
2. Etwas einfacher und IMHO besser lesbar ist es einfach im SUD ein lokales Array anzulegen und dieses via ReDim auf die richtige Größe bringen. Zum Schluss wird es dann einfach der Variable in der Klasse zugewiesen. Diese muss dann nur ohne (), also als 'normale' Variable deklariert sein.
Matthias
Matthias Alleweldt Project Engineer / Projektingenieur | Twigeater? |
03-04-2008 06:02 AM