拆分和VBA.Split

Dev*_*WAH 2 vba split

玩excel并想出了这个错误

    Sub Split()

Dim txt As String
Dim x As Variant
txt = Sheets("Raw").Cells(2, 2).Value
MsgBox (txt)
x = Split(txt, ",")
For Each i In x
MsgBox (i)
Next
Run Code Online (Sandbox Code Playgroud)

给我一个split函数的两个参数的错误

然而

    Sub Split()

Dim txt As String
Dim x As Variant
txt = Sheets("Raw").Cells(2, 2).Value
MsgBox (txt)
x = VBA.Split(txt, ",")
For Each i In x
MsgBox (i)
Next
Run Code Online (Sandbox Code Playgroud)

工作得很好?

所以最新情况,我确信我之前已经使用了拆分而不需要vba.字首?

干杯

亚伦

Tim*_*Tim 8

不熟悉Excel VBA,但查看您发布的代码片段,我认为VBA解释器可能已经混淆了.

你有Sub Split(),并且我假设,该函数的代码是什么?

当它试图执行时Split(txt, ","),很可能认为你指的是你的Split函数,它没有参数,但是你传递了两个.

使用VBA.Split解决了引用混淆,因为您告诉它在VBA名称空间中使用Split方法.

  • +1这就是答案.永远不要用现有的函数名称命名udf和sub - 这对用户来说也是令人难以置信的混乱:) (4认同)
  • 注意用子名或函数名命名的模块. (3认同)