gpt4 book ai didi

arrays - 在 VBA 中,如何将字符串拆分为数组,然后将其作为参数传递给 Sub 或 Function

转载 作者:行者123 更新时间:2023-12-02 05:35:12 25 4
gpt4 key购买 nike

我的问题:

有没有办法将字符串拆分为数组,然后将其作为参数传递给需要数组的 Sub 或 Function?

<小时/>

详细信息:

下面有两个简单的 VBA Sub。 Sub foo() 将字符串拆分为数组,然后尝试将其传递给 Sub bar()。

Sub foo()
aTest = Split("1,2,3", ",")
bar (aTest)
End Sub

Sub bar(ByRef aArray())
' Do something
End Sub

但是,它们不会编译;在 bar (aTest) 行中,参数未被识别为数组。错误如下:

Compile error:
Type mismatch: array or user-defined type expected

我认为发生错误是因为编译器不会将 Split 命令解释为将变量放入数组中。 (如果这是错误的假设,请告诉我!)

最佳答案

由于您似乎不喜欢使用变体,因此您可以根据需要提供更具体的信息:

Sub foo()
Dim aTest() As String
aTest = Split("1,2,3", ",")
Debug.Print TypeName(aTest) 'String()
bar aTest
End Sub

Sub bar(ByRef aArray() As String)
' Do something
End Sub

关于arrays - 在 VBA 中,如何将字符串拆分为数组,然后将其作为参数传递给 Sub 或 Function,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22569955/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com