您的位置:

lookup函数c语言,函数LOOKUP

本文目录一览:

=lookup(1,0/(F4=C1:C7),D4:D7)函数公式是什么意思?

总结的说:公式的意思就是以F4的值在C14:C7单元格中查找,找到后返回C1:C7 从上往下最后一个等于F4所对应的同一行的D1:D7的值。

LOOKUP函数格式如下:

=LOOKUP(查找的值,查找的范围(要求升序排列),返回对应的区域)

注意,公式中的C1:C7与D4:D7要求区域是相同的,要么是C1:C7与D1:D7,要么是C4:C7与D4:D7

假设区域是C1:C7与D1:D7,正确公式就是这样:

=LOOKUP(1,0/(F4=C1:C7),D1:D7)

注意,LOOKUP函数的第二参数要求是升序排列的,即1,2,3。。。。这样,或是1、1、1、或是6、6、6(第二参数所有数字相同也当作是升序)。

所以公式中的0/(F4=C1:C7),实际上是返回{0;0;#DIV!0;0.....0}这样的形式,那个#DIV!0是错误值,LOOKUP函数自动忽略,只对0进行运算。

前面第一个参数以1,在这一堆0中查找,返回最后一个最接近且比1小的0所对应的D1:D7区域的值。

LOOKUP函数的九种用法

lookup函数的参数有二种形式,一是向量,二是数组

LOOKUP(①查找值,②查找值所在区域,③返回的结果)

②为单行区域或单列区域,查找值所在区域必须先排序,否则出错。

③可以省略

没有精确匹配对象时,返回小于等于目标值的最大值

LOOKUP(①查找值,②二维数组)

这里很多人都不太理解其中的1,0代表着什么,这里我在网上找到一些人的解释。

在G2单元格输入公式:=LOOKUP(1,0/( 2: 19=F2), 2: 19)

在H2单元格输入公式:=LOOKUP(1,0/(( 2: 19=F2)*( 2: 19=G2)), 2: 19)

在F2单元格输入公式:=LOOKUP(1,0/( 2: 19=E2), 2: 19)

在C1单元格输入公式:=LOOKUP("々",A:A )或=LOOKUP("座",A:A )

"々"通常被看做是一个编码较大的字符,它的输入方法为组合键。第一参数写成"々" 和“座”都可以返回一列或一行中的最后一个文本。+41385 +41385

在C2单元格输入公式:=LOOKUP(9E307,A:A)

9E307被认为是接近Excel规范与限制允许键入最大数值的数,用它做查询值,可以返回一列或一行中的最后一个数值。

在C3单元格输入公式:=LOOKUP(1,0/(A:A""),A:A)

(A:A"")是判断不为空

A列是客户的简称,要求根据D列的客户全称对照表,在B列写出客户的全称。

在B2单元格输入公式:=IFERROR(LOOKUP(1,0/FIND(A2,D:D),D:D,"")

公式说明:

①0/FIND(A2,D:D),用FIND函数查询A2单元格“湖南永怡”在D列的起始位置,得到一个由错误值和数值组成的数组。

②使用IFERROR函数来屏蔽公式查询不到对应结果时返回的错误值。

根据加油站的年销售量,确定油站的等级。

在G2单元格输入公式:

=LOOKUP(F2,{0;2000;4000;6000;8000;10000}, 3: 8)

或者=LOOKUP(F2, 2: 8)

这种方法查找区域必须升序排序。

在B2单元格输入公式:

=-LOOKUP(1,-LEFT(A2,ROW( 245)))

公式说明:

①-LEFT(A2,ROW( 99))用LEFT函数从A2单元格左起第一个字符开始,依次返回长度为ROW( 99)也就是1至99的字符串,添加负号后,数值转换为负数,含有文本字符的字符串则变成错误值。

②LOOKUP函数使用1作为查询值,在由负数、0和错误值构成的数组中,忽略错误值提取最后一个等于或小于1的数值。

③最后再使用负号,将提取出的负数转为正数。

待续。。。。

LOOKUP函数如何使用

VLOOKUP函数

在表格或数值数组的首列查找指定的数值,并由此返回表格或数组中该数值所在行中指定列处的数值。

这里所说的“数组”,可以理解为表格中的一个区域。数组的列序号:数组的“首列”,就是这个区域的第一纵列,此列右边依次为第2列、3列……。假定某数组区域为B2:E10,那么,B2:B10为第1列、C2:C10为第2列……。

语法:

VLOOKUP(查找值,区域,列序号,逻辑值)

“查找值”:为需要在数组第一列中查找的数值,它可以是数值、引用或文字符串。

“区域”:数组所在的区域,如“B2:E10”,也可以使用对区域或区域名称的引用,例如数据库或数据清单。

“列序号”:即希望区域(数组)中待返回的匹配值的列序号,为1时,返回第一列中的数值,为2时,返回第二列中的数值,以此类推;若列序号小于1,函数VLOOKUP 返回错误值 #VALUE!;如果大于区域的列数,函数VLOOKUP返回错误值 #REF!。

“逻辑值”:为TRUE或FALSE。它指明函数 VLOOKUP 返回时是精确匹配还是近似匹配。如果为 TRUE 或省略,则返回近似匹配值,也就是说,如果找不到精确匹配值,则返回小于“查找值”的最大数值;如果“逻辑值”为FALSE,函数 VLOOKUP 将返回精确匹配值。如果找不到,则返回错误值 #N/A。如果“查找值”为文本时,“逻辑值”一般应为 FALSE 。另外:

·如果“查找值”小于“区域”第一列中的最小数值,函数 VLOOKUP 返回错误值 #N/A。

·如果函数 VLOOKUP 找不到“查找值” 且“逻辑值”为 FALSE,函数 VLOOKUP 返回错误值 #N/A。

下面举例说明VLOOKUP函数的使用方法。

假设在Sheet1中存放小麦、水稻、玉米、花生等若干农产品的销售单价:

A B

1 农产品名称 单价

2 小麦 0.56

3 水稻 0.48

4 玉米 0.39

5 花生 0.51

…………………………………

100 大豆 0.45

Sheet2为销售清单,每次填写的清单内容不尽相同:要求在Sheet2中输入农产品名称、数量后,根据Sheet1的数据,自动生成单价和销售额。设下表为Sheet2:

A B C D

1 农产品名称 数量 单价 金额

2 水稻 1000 0.48 480

3 玉米 2000 0.39 780

…………………………………………………

在D2单元格里输入公式:

=C2*B2 ;

在C2单元格里输入公式:

=VLOOKUP(A2,Sheet1!A2:B100,2,FALSE) 。

如用语言来表述,就是:在Sheet1表A2:B100区域的第一列查找Sheet2表单元格A2的值,查到后,返回这一行第2列的值。

这样,当Sheet2表A2单元格里输入的名称改变后,C2里的单价就会自动跟着变化。当然,如Sheet1中的单价值发生变化,Sheet2中相应的数值也会跟着变化。

其他单元格的公式,可采用填充的办法写入。

VLOOKUP函数使用注意事项

说到VLOOKUP函数,相信大家都会使用,而且都使用得很熟练了。不过,有几个细节问题,大家在使用时还是留心一下的好。

一.VLOOKUP的语法

VLOOKUP函数的完整语法是这样的:

VLOOKUP(lookup_value,table_array,col_index_num,range_lookup)

1.括号里有四个参数,是必需的。最后一个参数range_lookup是个逻辑值,我们常常输入一个0字,或者False;其实也可以输入一个1字,或者true。两者有什么区别呢?前者表示的是完整寻找,找不到就传回错误值#N/A;后者先是找一模一样的,找不到再去找很接近的值,还找不到也只好传回错误值#N/A。这对我们其实也没有什么实际意义,只是满足好奇而已,有兴趣的朋友可以去体验体验。

2.Lookup_value是一个很重要的参数,它可以是数值、文字字符串、或参照地址。我们常常用的是参照地址。用这个参数时,有两点要特别提醒:

A)参照地址的单元格格式类别与去搜寻的单元格格式的类别要一致,否则的话有时明明看到有资料,就是抓不过来。特别是参照地址的值是数字时,最为明显,若搜寻的单元格格式类别为文字,虽然看起来都是123,但是就是抓不出东西来的。

而且格式类别在未输入数据时就要先确定好,如果数据都输入进去了,发现格式不符,已为时已晚,若还想去抓,则需重新输入。

B)第二点提醒的,是使用时一个方便实用的小技巧,相信不少人早就知道了的。我们在使用参照地址时,有时需要将lookup_value的值固定在一个格子内,而又要使用下拉方式(或复制)将函数添加到新的单元格中去,这里就要用到“$”这个符号了,这是一个起固定作用的符号。比如说我始终想以D5格式来抓数据,则可以把D5弄成这样:$D$5,则不论你如何拉、复制,函数始终都会以D5的值来抓数据。

3.Table_array是搜寻的范围,col_index_num是范围内的栏数。Col_index_num 不能小于1,其实等于1也没有什么实际用的。如果出现一个这样的错误的值#REF!,则可能是col_index_num的值超过范围的总字段数。

二.VLOOKUP的错误值处理。

我们都知道,如果找不到数据,函数总会传回一个这样的错误值#N/A,这错误值其实也很有用的。比方说,如果我们想这样来作处理:如果找到的话,就传回相应的值,如果找不到的话,我就自动设定它的值等于0,那函数就可以写成这样:

=if(iserror(vlookup(1,2,3,0))=true,0,vlookup(1,2,3,0))

这句话的意思是这样的:如果VLOOKUP函数返回的值是个错误值的话(找不到数据),就等于0,否则,就等于VLOOKUP函数返回的值(即找到的相应的值)。

这里面又用了两个函数。

第一个是iserror函数。它的语法是iserror(value),即判断括号内的值是否为错误值,如果是,就等于true,不是,就等于false。

第二个是if函数,这也是一个常用的函数的,后面有机会再跟大家详细讲解。它的语法是if(条件判断式,结果1,结果2)。如果条件判断式是对的,就执行结果1,否则就执行结果2。举个例子:=if(D2=””,”空的”,”有东西”),意思是如D2这个格子里是空的值,就显示文字“空的”,否则,就显示“有东西”。(看起来简单吧?其实编程序,也就是这样子判断来判断去的。)

三.含有VLOOKUP函数的工作表档案的处理。

一般来说,含有VLOOKUP函数的工作表,如果又是在别的档案里抓取数据的话,档案往往是比较大的。尤其是当你使用的档案本身就很大的时候,那每次开启和存盘都是很受伤的事情。

有没有办法把文件压缩一下,加快开启和存盘的速度呢。这里提供一个小小的经验。

在工作表里,点击工具——选项——计算,把上面的更新远程参照和储存外部连结的勾去掉,再保存档案,则会加速不少,不信你可以试试。

下面详细的说一下它的原理。

1.含有VLOOKUP函数的工作表,每次在保存档案时,会同时保存一份其外部连结的档案。这样即使在单独打开这个工作表时,VLOOKUP函数一样可以抓取到数值。

2.在工作表打开时,微软会提示你,是否要更新远程参照。意思是说,你要不要连接最新的外部档案,好让你的VLOOKUP函数抓到最新的值。如果你有足够的耐心,不妨试试。

3.了解到这点,我们应该知道,每次单独打开含有VLOOKUP函数的工作表时,里面抓取外部档案的数值,只是上次我们存盘时保存的值。若要连结最新的值,必须要把外部档案同时打开。

VLOOKUP函数我所了解的,也只是这些,大家有什么好的经验或有什么疑问,欢迎大家提出,一起探讨。

lookup函数的使用方法

就是在C11到C16当中找一个值9^10的值。找到这个值之后,在这个值对应的D11到D16当中,找到对应值。

另外找开EXCEL后,点“帮助”,在“搜索”空格当中输入 LOOKUP 之后,就会出现解释。有向量与数组两种形式。

请采纳答案,支持我一下。

Lookup()函数的用法

实现的功能是找寻myMB结构中与strParentID相同的一个元素并返回,如果没有找到相同大小的,则返回小于这个数的最大值,可以去百度文库里面看一看,里面的讲解比较详细。希望能解决你的问题!

注:lookup()函数返回向量或数组中的数值。函数 LOOKUP 有两种语法形式:向量和数组。函数 LOOKUP 的向量形式是在单行区域或单列区域(向量)中查找数值,然后返回第二个单行区域或单列区域中相同位置的数值;函数 LOOKUP 的数组形式在数组的第一行或第一列查找指定的数值,然后返回数组的最后一行或最后一列中相同位置的数值。

函数 LOOKUP 有两种语法形式:向量和数组。其具体使用如下:

(1)向量形式:公式为 = LOOKUP(lookup_value,lookup_vector,result_vector)

式中 lookup_value—函数LOOKUP在第一个向量中所要查找的数值,它可以为数字、文本、逻辑值或包含数值的名称或引用;

lookup_vector—只包含一行或一列的区域lookup_vector 的数值可以为文本、数字或逻辑值;

result_vector—只包含一行或一列的区域其大小必须与 lookup_vector 相同。

(2)数组形式:公式为

= LOOKUP(lookup_value,array)

式中 array—包含文本、数字或逻辑值的单元格区域或数组它的值用于与 lookup_value 进行比较。

例如:LOOKUP(5.2,{4.2,5,7,9,10})=5。

注意:lookup_vector的数值必须按升序排列,否则函数LOOKUP不能返回正确的结果。文本不区分大小写。如果函数LOOKUP找不到lookup_value,则查找lookup_vector中小于或等于lookup_value的最大数值。如果lookup_value小于lookup_vector中的最小值,函数LOOKUP返回错误值#N/A。

怎么用lookup写这个函数?

如图,C1单元格输入公式=LOOKUP(A1,{0,20,30,40,50}%,{0,0.1,0.2,0.3,0.5})