indirect函数与MATCH函数组合 MATCH($D2,INDIRECT(("修改总表格!O"&$A1+1&":5

1个回答

  • 这个公式拆开来看

    =MATCH($D2,动态区域,0)

    动态区域=INDIRECT(("修改总表格!O"&$A1+1&":5000"))

    INDIRECT的作用是建立动态区域的引用.

    最简单的,比如说,=INDIRECT("A1")=A1.

    也就是说,建立一个文本形式的表述,用INDIRECT“还原”.

    =INDIRECT(("修改总表格!O"&$A1+1&":5000"))

    的意思是,根据$A1的变化,得到一个动态区域.但好像有一点错误,怀疑是

    =INDIRECT("修改总表格!O"&$A1+1&":O5000")

    比如$A1=3,那么计算过程为

    =INDIRECT("修改总表格!O"&3+1&":O5000")

    =INDIRECT("修改总表格!O"&3+1&":O5000")

    =INDIRECT("修改总表格!O4:O5000")

    =修改总表格!O4:O5000

    这个作为MATCH的检索区域,根据$A1的值动态更新.