求问一个EXCEL函数意义.=IF(ROW(A1)>D$2,"",INDEX(A:A,MATCH(LARGE(IF((B

1个回答

  • IF(ROW(A1)>D$2,"" 如果ROW(A1)比D2的数值大,则返回空数据

    其中ROW(A1)的作用是得到从1开始的序号,随着整个公式向下复制,这个序号会自动递增

    如果序号小于等于D2的数值,则返回后面一长串公式的结果

    这个公式的主函数是INDEX,目的是在A列(即A:A)中定位某个数据

    而这个数据的位置是由后面的MATCH函数找到的

    MATCH要找的数据是一个LARGE函数的结果(这个结果等下再解释)

    而MATCH查找的范围是B2:B100中的数据,并且这些数据都减去了一个很小的数:ROW($2:$100)/10^8,这个不用深究,就是用任意正数除以10的8次方,是一个很小的数

    MATCH函数的第三个参数被省略了,相当于是进行模糊查找

    如果无法准确匹配查找内容,则返回小于查找内容的最接近的位置

    将这个位置(即第几行)加1,得到A列这一行的数据

    LARGE函数的结果实在太绕了

    没有原始表格解释不清

    另外

    这个公式应该是个数据函数

    需要用“CTRL+SHIFT+回车”输入的