Funktionen geben in VBA immer einen Wert zurück. Soll dieser Wert ein Objekt sein, so muss man wissen, wie man ein Objekt in einer Funktion zurückgibt.
Die Vorgehensweise ist identisch mit der Zuweisung einer Objekt-Variable. Zum Vergleich zuerst das Vorgehen bei normalen Datentypen:
1 2 3 | Function addiere(a as Integer, b as Integer) as Integer addiere = a + b End Function |
Bei Objekten muss vor der Angabe des Funktionsname einfach ein „SET“ gesetzt werden:
1 2 3 4 5 6 7 8 | Function getAuto() as Object dim myAuto as Auto set myAuto = new Auto myAuto.farbe = "blau" myAuto.kennzeichen = "L-RB 2245" ' Zurückgeben des Wertes SET getAuto = myAuti End Function |
Andernfalls bringt er die nachfolgende Fehlermeldung:
