我在没有任何运气的情况下尝试使用IF(AND(INDIRECT(ADDRESS
函数。以下是我尝试使用的公式。请注意,单独的INDIRECT(ADDRESS
函数可以很好地工作,我也可以在SUM
函数中使用它们,但是我无法在IF
或IF(AND
函数中使用它。
IF(AND(INDIRECT(ADDRESS(3,COLUMN()))>=INDIRECT(ADDRESS(ROW(),4)),INDIRECT(ADDRESS(3,COLUMN()))<=INDIRECT(ADDRESS(ROW(),5)))INDIRECT(ADDRESS(3,COLUMN())))
IF(AND(INDIRECT(ADDRESS(3,COLUMN()))>=INDIRECT(ADDRESS(ROW(),4)),INDIRECT(ADDRESS(3,COLUMN()))<=INDIRECT(ADDRESS(ROW(),5)))INDIRECT(ADDRESS(3,COLUMN())))
答案 0 :(得分:1)
如果没有其他要求,但当更改未关联的值时,计算延迟较小,则INDEX比INDIRECT(ADDRESS)优先。
'indirect/address
INDIRECT(ADDRESS(3, COLUMN()))
'index
INDEX(3:3, 1, COLUMN())
两个INDEX函数很好地配对了一个真实的范围。
'with this in D10 it references SUM(D3:D9)
=SUM(INDEX(3:3, 1, COLUMN()):INDEX(9:9, 1, COLUMN()))
IF(AND(...
'with this in A1 it references IF(AND(A3>=D1, A3<=E1), A3)
=IF(AND(INDEX(3:3, 1, COLUMN())>=INDEX(D:D, ROW(), 1)),
INDEX(3:3, 1, COLUMN())<=INDEX(E:E, ROW(), 1))),
INDEX(3:3, 1, COLUMN()))
请注意,不要使用这些雕刻的单元格引用来创建循环引用的公式。