Array aus Funktion in VBA zurückgeben

Iqra Hasnain 18 August 2022
Array aus Funktion in VBA zurückgeben

VBA ist eine proprietäre Zwischensprache. Die vollständige Abkürzung von VBA ist Visual Basic for Applications, eine fortgeschrittene Programmiersprache, die von Microsoft basiert und entwickelt wurde.

Wir können VBA in verschiedenen Anwendungen wie Access, Excel, Word, Outlook und PowerPoint verwenden.

In diesem Artikel wird anhand eines Beispiels vorgestellt, wie Sie ein Array von einer Funktion in VBA zurückgeben.

Array aus Funktion in VBA zurückgeben

Es gibt viele Situationen, in denen wir ein Array von einer Funktion in VBA zurückgeben möchten. Die Syntax zum Zurückgeben eines Arrays von der Funktion wird unten gezeigt.

# VBA
Function arrayData() As Variant
End Function

Wir haben eine Funktion als Variant-Array deklariert, weil es bequemer ist, damit zu arbeiten. Lassen Sie uns ein Beispiel durchgehen und versuchen, ein Array innerhalb einer Funktion zu erstellen und es mit dem sub in VBA zurückzugeben, wie unten gezeigt.

# VBA
Function arrayData() As Variant
    Dim myArray As Variant
    ReDim myArray(1 To 2, 1 To 3)

    myArray(1, 1) = "Name"
    myArray(1, 2) = "Iqra"
    myArray(1, 3) = "Hasnain"
    myArray(2, 1) = "Name"
    myArray(2, 2) = "Ben"
    myArray(2, 3) = "Stoke"

    arrayData = myArray

End Function
Sub test()
    Dim arr As Variant

    arr = arrayData()

    MsgBox arr(1, 2)
End Sub

Ausgabe:

Geben Sie die Array-Funktion in der VBA-Ausgabe zurück

Wie Sie im obigen Beispiel sehen können, können wir ein Array einfach mit einer Funktion in VBA zurückgeben, indem wir das Array als Variant verwenden. Aber wenn wir das Array in die Unterprozedur bekommen und es mit MsgBox anzeigen, ist es die Referenz des Arrays, das wir von der Funktion zurückgegeben haben, aber nicht das eigentliche Array.

Wenn wir also versuchen, das Array zu ändern, ändern wir auch die Referenz des Arrays, das wir von der Funktion erhalten haben. Aber wenn der Zweck nur darin besteht, das Array mit einer Funktion zurückzugeben, können wir es auf diese Weise tun.

Verwandter Artikel - VBA Array