ich bräuchte einmal Hilfe, bei dem Managen von Daten.
Ich habe eine Userform und will im Hintergrund kontinuierlich eine Collection aufrecht erhalten.
Mein Problem ist, wenn ich, als Beispiel, die Collection in der Userform initialisiere mit diversen Klassenobjekten:
Sub UserForm_Initialize() Dim Teil As New Collection Set Teil = Einlesen Dim Teiln As clsTeil End Sub
Hier einmal die Funktion zum Einlesen:
Function Einlesen() As Collection Dim coll As Collection Set coll = New Collection 'Zählen der angelegten Gegner, als "Teilnehmer_aller": Dim Teil_all As Integer Teil_all = 0 Do While Worksheets(1).Cells(Teil_all + 1, 1) > "" Teil_all = Teil_all + 1 Loop 'Einlesen der Spieler Dim i As Integer, Teilnehmer As clsTeil For i = 2 To Teil_all Set Teilnehmer = New clsTeil Teilnehmer.m_name = Worksheets(1).Cells(i, 5) Teilnehmer.m_Ini = Worksheets(1).Cells(i, 6) Teilnehmer.m_L = True If Worksheets(1).Cells(i, 1) = Worksheets(3).Cells(4, 1) Then Teilnehmer.m_Team = True Else Teilnehmer.m_Team = False End If coll.Add Teilnehmer Next Set Einlesen = coll End Function
Dann hat er nur in diesem Codefragment die Collection. Dabei würde ich gerne konsequent im Nachgang, im Hintergrund die Werte dieser Collection mit Ihren Objekten ändern. (Zum Beispiel über Command Buttons in der UserForm.)
Mein Workaround wäre, dass ich immer die Werte wieder auf ein Worksheet schmeiße, dass ist aber recht mühselig und langsam.
Gibt es hier einen vernünftigen/schönen Weg das zu lösen?
Vielen Dank für eure Hilfe im Voraus. :)