0
当试图将我的数组转储到一个范围时,我得到一个错误1004,但只有在包含括号的数组中有一个公式时。将公式分配给范围的公式时,VBA错误1004
Dim DataArray(27, 11) as Variant
Dim wod as Worksheet
dim rng as Range
Dim d as Range
Dim ArrayEnd as Integer
这是我的阵列
For y = 0 To lastrowo
If Not IsEmpty(d.Offset(y, 0).Value) Then
DataArray(y, 0) = d.Offset(y, 0).Value2
DataArray(y, 1) = d.Offset(y, 10).Value2
DataArray(y, 2) = d.Offset(y, 14).Value2
DataArray(y, 3) = d.Offset(y, 16).Value2
DataArray(y, 4) = d.Offset(y, 19).Value2
DataArray(y, 5) = d.Offset(y, 22).Value2
DataArray(y, 6) = d.Offset(y, 25).Value2
DataArray(y, 7) = "=ROUND(F" & y + 3 & "-G" & y + 3 & ";0)"
DataArray(y, 8) = "=G" & y + 3
DataArray(y, 9) = d.Offset(y, 28).Value2
DataArray(y, 10) = d.Offset(y, 31).Value2
DataArray(y, 11) = d.Offset(y, 36).Value2
这是有问题的部分,如果删除括号和 “;”它一切正常。
DataArray(y, 7) = "=ROUND(F" & y + 3 & "-G" & y + 3 & ";0)"
而且这是我得到的错误
Set rng = wod.Range("A3:L" & ArrayEnd + 3)
rng = DataArray
我甚至试过这种变异
"=ROUND" & Chr(40) & "F" & y + 3 & "-G" & y + 3 & Chr(59) & "0" & Chr(41)
更换配方,这是它的外观在我的数组
你尝试','而不是';'? – IQV
是的,这是什么,本地化罢工了。 – PRKNS