Mehere Rückgabe-Werte für Functions


Manchmal muss man eine Function aufrufen und dabei mehrere Werte zurückgeben. Functions können in Visual Basic 6 bekanntlich aber nur einen Wert überliefern. Für diesen Zweck kann man Shared-Variablen oder Subs verwenden.
Viel eleganter ist es aber, einfach ein Array zu übergeben. Arrays existieren zwar nicht als eigenständiger Datentyp, doch man kann sie als Variant-Objekt erstellen. Diese zurückgegebenen Arrays können auch auf ihre Größe überprüft werden, das geht genau wie bei "normalen" Arrays mittels LBound und UBound.
Der folgende Code zeigt, wie du diesen Trick ausnutzen kannst: Private Sub Form_Load()
  Dim rückgabe As Variant
  Dim i As Integer
  rückgabe = gemischtesArray
  For i = LBound(rückgabe) To UBound(rückgabe)
    Debug.Print rückgabe(i)
  Next
End Sub

Function gemischtesArray() As Variant
  Dim werte As Variant
  werte = Array(0, True, "Saga-Games", 1337)
  gemischtesArray = werte
End Function
Im Debug-Fenster werden nun die Werte 0, True, Saga-Games und 1337 angezeigt.

Letzte Änderung: 25.10.2018, 18:58