VBA(!) - Strukturen (benutzerdefinierter typ) an Funktion übergeben

dallas998

Grünschnabel
Hallo zusammen,
bin nicht sicher , ob ich in diesem Forum richtig, bin aber habe kein besseres gefunden.

Ich habe unter VBA (Access) ein Modul in dem 4 Deklaration (benutzerdefinierte Typen)
mit Public Type stecken.

In einem weiteren Modul soll nun einer dieser Typen mit Daten versorgt werden und die gefüllte Struktur an
den nächsten Baustein weitergereicht werden.
Jetzt habe ich dazu 2 Probleme.

1) Die Übergabe:
Nachdem ich also mit Code

Dim XX As BenutzerdefinierteStruktur
XX.Feld aus BenutzerdefinierterStrukur= "Versuch"

dem Feld den Wert "Versuch" übergeben haben, will ich
nun die komplette Struktur an eine andere Funktion / SUB übergeben.

z.B. durch
Funktionsname (XX)

Es kommt der Fehler:
"Nur benutzerdefinierte Typen, die in öffentlichen Objektmodulen definiert sind, können in den oder aus dem Typ Variant umgewandelt werden, oder an eine Funktion weitergeleitet werden.

Ich habe also schon versucht, die Typisierung über die Übergabeschnittstellten zu definieren. Klappt nicht.

Dann habe ich die Struktur als Public definiert. Ging auch nicht.
Wie schaffe ich es, die gefüllte Stuktur an SUBs bzw. Functions zu übergeben ?

2) Durchlaufen der Einzelfelder innerhalb des Types.
Kann ich die Struktur dynamisch (also ohne den Feldnamen) auslesen ?
Also irgenwie so, oder so ähnlich ?

For Each Z In XX
next Z
Das o.g. Beispiel funktioniert leider nicht.

Also jedes Feld eines benutzerdefinierten Types (Struktur) einmal auslesen, ohneauf jedes Feld einzelnd zugreifen zu müssen ?

Danke für die Hilfe

dallas998
 
Zuletzt bearbeitet:
Übergabe an Funktion
Code:
'Deklaration der Funktion
Funktionsname(ByRef XX as BenutzerdefinierteStruktur)

'Aufruf
Funktionsname(XX)

achso: deine BenutzerdefinierteStruktur sollte auf jeden Fall als Public Type deklariert sein.
 
Zuletzt bearbeitet:
Zurück