我正在处理一个相当大的VBA宏的一部分,该宏用于在另一个单元格等于1时应用条件格式,以便单元格可以突出显示为“已选中”。
当生成执行此操作的条件格式化公式时,excel似乎正在更改自己的常量值 - 它从中读取的所有值应该在第99行并且这在代码中,但是excel将公式更改为{{1对于第一个,然后=IF(B101=1,1,0)
用于下一个,依此类推
这些是合并的单元格,所以我假设excel试图通过将公式偏移我的行数来自动完成我的代码。显然这是不可取的,有谁知道如何阻止excel这样做?相关的代码部分如下:
=IF(B105=1,1,0)
答案 0 :(得分:1)
我认为您需要在行或列引用前加上“$”,以防止Excel为不同的行或列自动调整它。
例如,“B $ 101”将允许在公式移动到不同位置时调整列(B),但不允许调整列(B),前面是“$”。