答疑解惑题,如何返回某一列的最后一个非空单元格的值?当数据新增或删减时,返回结果也随之自动更新。
案例:
如下图所示,当 A 列的数据更新时,B2 单元格自动显示 A 列最后一个单元格的内容。
解决方案:
我们先随便在 A 列填入点数据。
1. 在 B1 单元格中输入以下公式:
=INDEX(A:A,COUNTA(A:A))
公式释义:
COUNTA(A:A):计算 A 列的非空单元格数;
INDEX(A:A,...):
index 函数的作用是返回区域中指定坐标的值;
其参数为 (查找区域,区域中的第几行,[区域中的第几列]);
整个公式的含义为统计 A 列的非空单元格数(假设为 n),并返回 A 列中第 n 行的值。
动画效果如下,无论输入的是数值还是文本,都能返回最后一个值。
不过上述方法仅对 A 列区域连续无跳空的情况下有效,如果当中有空行,结果就不准确了。因为 counta 不会把空单元格也计算在内,所以非空单元格总数并不等于最后一个单元格的排序数。
如果存在跳空也要能够找到最后一个单元格,可以改用下面的公式。
如果是数值列,可以用这个公式。
2. 将 B2 单元格的公式修改如下:
=LOOKUP(9^9,A:A)
公式释义:
9^9 通常用来表示一个非常大的数值;
lookup 函数用于在 A 列查找比 9^9 大的数值,如果找不到,将返回最后一个单元格的值。
如果是文本列,则只需稍微修改一下公式参数。
3. 再次修改 B2 单元格的公式如下:
=LOOKUP("座",A:A)
公式释义:
“座”是一个非常大的中文字,lookup 同样在 A 列中遍历查找有没有比它更大的文本,如果没有,就返回最后一个单元格的值。
转发、在看也是爱!
领取专属 10元无门槛券
私享最新 技术干货