VBA:Range.FormulaArray 无法识别 R1C1 表示法

VBA: R1C1 Notation not being recognised with Range.FormulaArray

我正在尝试将下面的公式放入一列中。一旦我删除 RC[-1],该公式就起作用了,但我得到了一个包含它的对象定义错误。无论如何我可以获得公式数组以同时使用 r1c1 和 a1 引用?

公式赋值其中returns一个对象定义错误:

.Range(columnReference).FormulaArray "=MATCH(RC[" & tokyoDigitRC & "] &" & Chr(34) & keyfigure & Chr(34) & "&" & Chr(34) & salesOrg & Chr(34) & "," & tokyoDigitRNG & "&" & keyfigureRNG & "&" & salesOrgRNG & ",0)"

RNG 变量都采用相同的格式,例如 "CPL_REFERENCE_DATA!$C:$C0"

右边赋值么returns。

=MATCH(RC[-1] &"NET SALES"&"RU10",CPL_REFERENCE_DATA!$C:$C07&CPL_REFERENCE_DATA!$D:$D07&CPL_REFERENCE_DATA!$B:$B07,0)

一旦我删除了 RC[-1] 并替换了一个单元格,它 returns 就是正确的值。

PS:我知道我可以遍历该列并将RC[-1]替换为偏移量但是数据量很大并且向下希望过程太长。

不能混合使用 R1C1 和 A1 表示法。你必须做一个或另一个。

所以请更改您的参考资料:

CPL_REFERENCE_DATA!$C:$C0

到 R1C1 样式:

CPL_REFERENCE_DATA!R15C3:R120C3

没有 [] 引用是相对于页面和绝对的。