我已经编写了下面显示的函数。当我在 Sub 中使用它时它可以工作。这是我第一次尝试编写函数。我知道这是一个菜鸟问题,但是我似乎无法运行该功能。这可能与未正确调用函数或未正确定义函数头中的变量有关
谁能指出我正确的方向。
Function SortArray(ArrayToSort As String)
Dim x As Long, y As Long
Dim TempTxt1 As String
Dim TempTxt2 As String
For x = LBound(ArrayToSort) To UBound(ArrayToSort)
For y = x To UBound(ArrayToSort)
If UCase(ArrayToSort(y)) < UCase(ArrayToSort(x)) Then
TempTxt1 = ArrayToSort(x)
TempTxt2 = ArrayToSort(y)
ArrayToSort(x) = TempTxt2
ArrayToSort(y) = TempTxt1
End If
Next y
Next x
End Function
Sub CreateUniquesList()
Dim References() As String
...
SortArray (References)
...
End Sub
最佳答案
添加括号以确保参数是一个数组
Function SortArray(ArrayToSort() As String)
'your code
End Function
Sub CreateUniquesList()
Dim References() As String
'...
SortArray References 'lose the parentheses
'...
End Sub
关于vba - Excel VBA排序数组函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44077753/