Eigenschaften einer Klasse mit ForEach-Schleif
25.06.2018 19:21:49
MakroMarco
folgende Frage an euch, und ich hoffe ihr könnt mir weiterhelfen.
Ich habe eine Klasse clsSollwerte mit den Eigenschaften Name und Kommentar.
Mittels ForEach-Schleife möchte ich diese getrennt ausgelesen. Prinzipiell kenne ich nur das vorgehen wie in modAusgabe dargestellt. Da meine Klasse jedoch sehr viele Eigenschaften besitzt, möchte ich nicht jedesmal eine ForEach-Schleife als Code schreiben (nur wenn es nicht anders geht :-(). Meine Gedanke (siehe modBesser) wäre daher, eine ForEach-Schleife in eine Sub zu schreiben und der Sub die jeweilige Eigenschaft übergeben. Geht das irgendwie?
Schon mal vorab ein Danke schön!
Klassenmodul: clsSollwerte
Private m_strName As String
Private m_strKommentar As String
Public Property Get Name() As String
Name = Replace(m_strName, "Name:", "")
End Property
Public Property Let Name(ByVal strName As String)
m_strName = strName
End Property
Public Property Get Kommentar() As String
Kommentar = Replace(m_strKommentar, "Kommentar:", "")
End Property
Public Property Let Kommentar(ByVal strKommentar As String)
m_strKommentar = strKommentar
End Property
Modul: modAusgabe 'Bisher
Private Sub Sollwerte()
Dim objSollwerte As Object
Dim objSollwert As clsSollwerte
For Each objSollwert In objSollwerte
Debug.Print objSollwert.Name
Next
For Each objSollwert In objSollwerte
Debug.Print objSollwert.Kommentar
Next
End Sub
Modul: modBesser 'Eure Hilfe :-)
Private m_objSollwerte As Object
Private m_objSollwert As clsSollwerte
Private Sub Sollwerte()
Schleife .Name
Schleife .Kommentar
End Sub
Private Sub Schleife(Uebergabe as ?)
For Each m_objSollwert In m_objSollwerte
Debug.Print m_objSollwert.Uebergabe
Next
End Sub