对于vlookup功能我只了解皮毛,刚刚看到一个公式,不是很明白,和我以已知有些出入,已知格式为

问题描述:

对于vlookup功能我只了解皮毛,刚刚看到一个公式,不是很明白,和我以已知有些出入,已知格式为
=vlookup(目标值,区域,返回值,"0"or"1")
而现在的公式如下:
=LOOKUP(2,1/(A1:A100""),A1:A100)
公式意思为在A1至A100单元格区域查找并返回最后一个非空的数据
1 那么何为目标值?目标值可以不是某一单元格,而是一个固定数值吗?
2 此表中的区域全部为A1:A100我能理解,但返回值又如何体现?如何看出返回值为“最后一个非空的数据”
1个回答 分类:综合 2014-09-17

问题解答:

我来补答
VLOOKUP函数与LOOKUP函数是不同的两个函数
=vlookup(目标值,区域,返回值所在列,"0"or"1") 这里"目标值"指的是查找值,就是说按这个值在"区域"的头一列中查找是否有匹配(或相似)的内容,有则返回同一行要返回值所在列的值.
"目标值可以不是某一单元格,而是一个固定数值吗?"
当然可以的.
这个网址里进去学习一下
=LOOKUP(2,1/(A1:A100""),A1:A100)
公式意思为在A1至A100单元格区域查找并返回最后一个非空的数据
LOOKUP这是另一个函数,
LOOKUP(lookup_value,lookup_vector,result_vector)
如果函数 LOOKUP 找不到 lookup_value,则查找 lookup_vector 中小于或等于 lookup_value 的最大数值.
第二个参数为0/(A1:A100""),即满足条件A1:A100里不等于空值的单元格.
如果满足这个条件的单元格---则第二参数返回 1/True =1/1 =1(也就是说非空的单元格返回值为1)
如果不满足这个条件的单元格---则第二参数返回 1/FALSE =1/0 =#DIV/0!的错误.(也就是说空单元格返回值是错误值 #DIV/0!)
于是第二参数便是由这么一堆的{1,1,1,#DIV/0!,#DIV/0!,#DIV/0!……}(这个数组的意思是A1,A2,A3单元格不为空,其它的单元格都为空的样式)组成的数组---最大也就是1,怎么也大不过第一个参数2.
所以由于Lookup函数的特性,就找到了最后一个1的位置,即A3单元格(A1:A100区域中最后一个非空单元格)
 
 
展开全文阅读
剩余:2000