我正在尝试在match()函数的第二个条件上使用带有OR()选项的多个范围条件。如果要使用第三个条件,则将包含在内,并跳过我尝试查找的值。
当前拥有此:
=CELL("row",INDEX($D$69:$I$215,MATCH(1,(E30=E69:E215)*("Buy"=G69:G215),0),2))
**是否有办法使它正常工作? **
=MATCH(1,(E30=INDIRECT("E" & C30 & ":E" & C27)* **OR( ("Buy"=INDIRECT("G"&C30&":G"&C27)),("Reinvestment"=INDIRECT("G"&C30&":G"&C27))**)),0)
一个,避免使用CELL
,因为它易挥发。您可以简单地做:
=MATCH(1,(E30=E69:E215)*("Buy"=G69:G215),0)+MIN(ROW(E69:E215))-1
二,要在数组公式中执行OR
,可以使用+
并替换INDIRECT,这对于INDEX也是易变的
=MATCH(1,(E30=INDEX(E:E,C30):INDEX(E:E,C27))*(("Buy"=INDEX(G:G,C30):INDEX(G:G,C27))+("Reinvestment"=INDEX(G:G,C30):INDEX(G:G,C27))),0)+C30-1
取决于一个人的版本,退出编辑模式时,可能需要使用Ctrl-Shift-Enter而不是Enter来确认。
一个人也可以使用AGGREGATE:
=AGGREGATE(15,7,ROW(INDEX(E:E,C30):INDEX(E:E,C27))/((E30=INDEX(E:E,C30):INDEX(E:E,C27))*(("Buy"=INDEX(G:G,C30):INDEX(G:G,C27))+("Reinvestment"=INDEX(G:G,C30):INDEX(G:G,C27)))),1)
不需要CSE条目。