删除列时的 Excel 条件格式会创建 #Ref



我有以下条件格式,这些格式在工作簿中使用命名范围。

=INDEX(CalculatedMonth1,ROW($A1))<INDEX(ForecastMonth2, ROW($A1))
=INDEX(CalculatedMonth1,ROW($A1))>INDEX(ForecastMonth2, ROW($A1))+INDEX(ForecastMonth3, ROW($A1))+INDEX(ForecastMonth4, ROW($A1))

它们工作得很好,除非有人删除了一列,然后条件格式公式将更改为:

=INDEX(CalculatedMonth1,ROW(#REF!))<INDEX(ForecastMonth2, ROW(#REF!))
=INDEX(CalculatedMonth1,ROW(#REF!))>INDEX(ForecastMonth2, ROW(#REF!))+INDEX(ForecastMonth3, ROW(#REF!))+INDEX(ForecastMonth4, ROW(#REF!))

有没有办法防止 $A 1 转换为 #REF!或者是否有另一个公式可以在我的条件格式中使用,不会给我带来这种麻烦? 我唯一的条件是它必须使用这些命名范围。

如果您的 CFR 从第 1 行开始,那么为什么不使用 ROW() 而不是 ROW($A1) ?如果它从第 2 行开始,则使用 ROW()-1

=INDEX(CalculatedMonth1,ROW())<INDEX(ForecastMonth2, ROW())
=INDEX(CalculatedMonth1,ROW())>INDEX(ForecastMonth2, ROW())+INDEX(ForecastMonth3, ROW())+INDEX(ForecastMonth4, ROW())

ROW(...( 函数返回参数的行号,如果未提供参数,则返回参数所在的任何行。在您的情况下,当在第 1 行中评估 CFR 时,您只需要数字 1,在第 2 行中评估 CFR 时,您只需要数字 2,依此类推。

最新更新