繁体   English   中英

填充数组时VBA中的类型不匹配错误

[英]Type mismatch error in VBA in populating an array

我正在定义这样的数组,并直接使用它而不使用任何循环

但其抛出错误“类型不匹配错误”

Dim battarray() As Integer
x = Sheets("Names").Range("a4")
ReDim battarray(x) As Integer
battarray() = Array(40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50)

有人可以帮我解决这个问题吗

删除两个As Integer实例,并(可选)将它们替换为As Variant

Array(40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50)创建类型为Variant的数组。 不能将其分配给Integer类型的数组。

请注意,如果您要对battarray的内容进行硬编码,则没有必要ReDim预先对数组进行battarray 这足够了:

Dim battarray() As Variant
battarray() = Array(40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM