我正在尝试建立一个简单的公式:如果该单元格与当前单元格在同一行,但是列J为= 1或为空,则结果为1,否则为0。
关于= 1的部分有效,关于=“”的部分由于某些原因而无效。
这是我的公式:
=IF(OR("J"&ROW()=1,"J"&ROW()=""),1,0)
任何人都可以帮助我找出为什么“ J”&ROW()=“”返回false的原因,即使它显然是正确的?如果目标单元格为1,则“ J”&ROW()= 1返回true。
我测试的另一件事是“ J”&ROW()= j50,其中50是实际的行号,并且还返回了false,这对我来说没有任何意义。
答案 0 :(得分:2)
您需要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)
答案 1 :(得分:1)
在这种特定情况下,可以使用RC表示法。公式如下:
=IF(OR(RC10=1;RC10="");1;0)