vba 拆分功能的类型错误和不匹配

Posted

技术标签:

【中文标题】vba 拆分功能的类型错误和不匹配【英文标题】:Type error and mismatch for vba split function 【发布时间】:2020-02-05 05:03:21 【问题描述】:

我在字符串中定义了一个变量,如下所示

Dim stringValue As String
Dim stringArray As String

stringValue = "3,4,5"
stringArray = Split(stringValue,",")

我不确定这里出了什么问题,但是当它通过拆分功能时,它给出了

error [“类型错误13,类型不匹配”]

【问题讨论】:

【参考方案1】:

您想将您的stringArray 定义为Variant,以便它可以采用数组的属性。

Dim stringValue As String
Dim stringArray As Variant

stringValue = "3,4,5"
stringArray = Split(stringValue,",")

或从头定义为字符串数组:

Dim stringValue As String
Dim stringArray() As String

stringValue = "3,4,5"
stringArray = Split(stringValue,",")

因此,由于您的示例非常简单,您也可以这样做:

Dim stringArray As Variant
stringArray = Array("3", "4", "5")

【讨论】:

对不起,我打错了,但我只使用了 stringArray()。 我的意思是说我只使用 stringArray() 后得到错误 您必须有一些其他代码未包含在您的问题中,这些代码会干扰它。您是否在测试子例程中单独尝试了我的示例?

以上是关于vba 拆分功能的类型错误和不匹配的主要内容,如果未能解决你的问题,请参考以下文章

vba 格式函数抛出类型不匹配错误

VBA:私有子中的编译错误 ByRef 参数类型不匹配

切换到 64 位 Excel 后如何修复 VBA“类型不匹配”错误

Excel VBA 类型不匹配错误

查找文件夹/子文件夹名称时 MS Access VBA 运行时错误“13”类型不匹配

使用布尔变量在 VBA 中键入不匹配错误