1、EXCEL 中返回非空最后一行的行号A1-A9:数字/字母/ 汉字A10-A12:空格 A13:汉字 如何返回 A13 的行数 13 就是说一列数,中间不定单元格有空格 要返回最后个有数据的行数 =LOOKUP(1,0/(A1:A65535“),ROW(1:65535) 或者数组公式: =MAX(A1:A65535“)*ROW(A1:A65535) 输入后要按 Ctrl+Shift+Enter LOOKUP()函数采用“二分法”进行查数,因此,要求源数据必须进行升序排序。但是,世事无绝对,总有一些牛人能想出各种办法,在不排序的情况下用 LOOKUP()!公式:=LOOKUP(1,0/($A$2
2、:A$696=F2),$C$2:C$696)公式释义:$A$2:A$696=F2 得到的是 False、True 的序列,在 Excel 中,涉及到数学运算时,False=0,True=1 ,因此用0 除后,得到的是#DIV/0!、0 序列。注意:在 Excel 中,所有错误值不参与排序,不参与字符串的比较,或者说:错误值比所有的数值、字符串都要“大” 。而公式的作用是在生成的#DIV/0!、0 序列中找到小于或等于 1 的最大值,因为错误值不参与排序,因此只能找到 0(也就是$A$2:$A$696=F2 成立的地方!并且只有一个!) ,然后返回相对应的$C$2:$C$696 中的数值。另外,因为“二分法”的缘故,如果源数据中有好几个符合条件的值(这些值肯定是相等的!),那么 LOOKUP()总会返回排在最后面的一个(而 VLOOKUP()总会返回第一次!)。因此,假设 A 列有许多数据,并且里面还有空格,想找到最后一个单元格的位置,怎么办?如果没有空格,可以用公式:=COUNTA(A1:A65535)现在有空单元格,可以用公式:=LOOKUP(1,0/(A1:A65535“),ROW(A1:A65535)与上面的公式原理相同。