c***@web.de
2007-05-18 18:35:48 UTC
Hallo,
ich möchte gerne ein Array an eine Userform via properties übergeben.
Leider funktioniert das nicht so wie ich erwarte.
Meine Versuche:
1.) in Routine, die übergeben soll wurde zuerst
alles mit Redim errArr(..) as String deklariert
(... sterht für irgendeinen Wert; ab und an
wurde preserver verwendet ;-))
Ergebnis:
"Datenfeld muss als Referenz übergeben werden"
wurde gemeckert
2.) anstelle String wurde alles mit Variant deklariert
Ergebnis:
Diesmal giert VBA nicht nach RyRef. Aber
bei der Zuweisung an ein Listenfeld via For-Each
zickte VBA seltsamerweise mit derv Forschleife
Auszug aus dem Code nach der Umstellung auf Variant):
In der UsaForm:
Private m_errArray() As Variant
'####### Schnittstelle Zeilenzähler Terminplaner (Haupttabelle)
Public Property Get errArray() As Variant
errArray = m_errArray
End Property
Public Property Let errArray(errCollection As Variant)
m_errArray = errCollection
End Property
....
sub uf_ini() ' bin faul ;-)
dim x as variant
for each x in errArray
me.lbxMeckerFenster.additem x
next x
In der rufenden ruthine:
....
frmMeckerFenster.errArray =errArray
.....
so.
Hat da jemand eine Idee (aber bitte keine globalen Variablen, die mag
ich absolut nicht :-)) ?
Merci für Eure Mühe
Gruß ChFa
ich möchte gerne ein Array an eine Userform via properties übergeben.
Leider funktioniert das nicht so wie ich erwarte.
Meine Versuche:
1.) in Routine, die übergeben soll wurde zuerst
alles mit Redim errArr(..) as String deklariert
(... sterht für irgendeinen Wert; ab und an
wurde preserver verwendet ;-))
Ergebnis:
"Datenfeld muss als Referenz übergeben werden"
wurde gemeckert
2.) anstelle String wurde alles mit Variant deklariert
Ergebnis:
Diesmal giert VBA nicht nach RyRef. Aber
bei der Zuweisung an ein Listenfeld via For-Each
zickte VBA seltsamerweise mit derv Forschleife
Auszug aus dem Code nach der Umstellung auf Variant):
In der UsaForm:
Private m_errArray() As Variant
'####### Schnittstelle Zeilenzähler Terminplaner (Haupttabelle)
Public Property Get errArray() As Variant
errArray = m_errArray
End Property
Public Property Let errArray(errCollection As Variant)
m_errArray = errCollection
End Property
....
sub uf_ini() ' bin faul ;-)
dim x as variant
for each x in errArray
me.lbxMeckerFenster.additem x
next x
In der rufenden ruthine:
....
frmMeckerFenster.errArray =errArray
.....
so.
Hat da jemand eine Idee (aber bitte keine globalen Variablen, die mag
ich absolut nicht :-)) ?
Merci für Eure Mühe
Gruß ChFa