我想将数组mastersheet()
的值复制到一系列相同大小的单元格上。
Dim mastersheet() As Variant
最初被声明为变体
ReDim mastersheet(1, 1, 1, 1)
最终在代码中它有4个“列”或维度。
wbmastersheet.Worksheets(1).range("A1:D" & UBound(mastersheet, 4)) = mastersheet()
最终在第2列或第二维中添加字符串。并非所有列都具有相同的数据类型。
{{1}}
我收到以下错误
错误13:类型不匹配
任何人都可以解决这个问题吗?
答案 0 :(得分:1)
您似乎将排名与实际维度混淆。
重写您的代码,以便主表为1到 x ,1到4.将值放入数组中,
redim mastersheet(1 to 2, 1 to 4)
mastersheet(1, 1) = "A1"
mastersheet(1, 2) = "B1"
mastersheet(1, 3) = "C1"
mastersheet(1, 4) = "D1"
mastersheet(2, 1) = "A2"
mastersheet(2, 2) = "B2"
mastersheet(2, 3) = "C2"
mastersheet(2, 4) = "D2"
将值写回工作表,如下所示,
wbmastersheet.Worksheets(1).range("A1").Resize(UBound(mastersheet, 1), UBound(mastersheet, 2)) = mastersheet