首页 > 解决方案 > 为什么 Excel VBA 只接受此数组公式中的相对 R1C1 引用?

问题描述

我正在尝试将这行代码添加到我的 VBA 中。它将数组公式添加到一系列单元格中:

str_Formula = "=INDEX(rng_List,MATCH(1,--(RC1>=rng_A)*--(RC1<=rng_B),0))"
rng_Formula.FormulaArray = str_Formula

出于某种原因,该公式仅在我使用相对 R1C1 参考 (RC[-22]) 时计算。如果我使用上面的绝对形式,那么它会尝试使用单元格 RC1 的值(在 A1 参考符号中)。

有没有办法可以强制 VBA 将 RC1 读取为 R1C1 参考?

标签: excelvbaarray-formulasexcel-r1c1-notation

解决方案


不,我无法强制 VBA 将 RC1 读取为 R1C1 参考。

从上面的斯科特克兰纳:

“因为有一个列RC,如果没有[]R 之后,你不能做一个绝对列和相对行。你可以做一个绝对行和相对列R1C,它会起作用,但它会首先尝试 A1,如果它有效,它将使用它,否则它将尝试 R1C1。”


推荐阅读