Excel - 公式引用同一行的单元格

Excel - Formula reference to cell on the same row

我正在尝试构建一个简单的公式:如果单元格与当前单元格位于同一行,但第 J 列为 =1 或为空,则结果为 1,否则为 0。

关于 =1 的部分有效,关于 ="" 的部分由于某种原因无效。

这是我的公式:

    =IF(OR("J"&ROW()=1,"J"&ROW()=""),1,0)

谁能帮我找出为什么 "J"&ROW()="" returns 错误,即使它显然是正确的?如果目标单元格为 1,则 "J"&ROW()=1 returns 为真。

我测试的另一个是"J"&ROW()=j50,其中50是实际行号,这也返回false,这对我来说没有任何意义。

您需要使用 INDIRECT 将字符串转换为单元格引用

=IF(OR(INDIRECT("J"&ROW())=1,INDIRECT("J"&ROW())=""),1,0)

或使用 INDEX(因为 INDIRECT 是不稳定的)

=IF(OR(INDEX(J:J,ROW())=1,INDEX(J:J,ROW())=""),1,0)

在这种特定情况下,使用 RC 表示法是有意义的。公式如下所示:

=IF(OR(RC10=1;RC10="");1;0)