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:
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.