首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

VLOOKUP和间接、文本公式组合

VLOOKUP函数是Excel中的一个纵向查找函数,它可以在表格的首列中查找指定的值,并返回同一行中另一列的值。VLOOKUP函数的基本语法是:

代码语言:txt
复制
VLOOKUP(lookup_value, table_array, col_index_num, [range_lookup])
  • lookup_value 是需要查找的值。
  • table_array 是包含数据的表格区域。
  • col_index_num 是返回值的列索引号。
  • [range_lookup] 是一个可选参数,指定查找时是否需要精确匹配。

间接函数(INDIRECT)允许你使用一个字符串作为引用,来引用单元格或区域。它可以将文本字符串转换为实际的单元格引用。INDIRECT函数的基本语法是:

代码语言:txt
复制
INDIRECT(ref_text, [a1])
  • ref_text 是一个文本字符串,表示单元格引用。
  • [a1] 是一个可选参数,指定引用样式,TRUE 表示 A1 样式,FALSE 表示 R1C1 样式。

文本函数(如 CONCATENATE 或 & 运算符)用于处理文本字符串,可以将多个文本值连接起来。CONCATENATE函数的基本语法是:

代码语言:txt
复制
CONCATENATE(text1, [text2], ...)

或者使用 & 运算符:

代码语言:txt
复制
text1 & text2 & ...

组合使用VLOOKUP、INDIRECT和文本函数可以实现更复杂的查找和数据处理任务。例如,如果你想根据一个动态变化的列名来查找数据,你可以使用INDIRECT函数来构造VLOOKUP的table_array参数。

优势

  • 提高了数据处理的灵活性和动态性。
  • 可以根据变量或条件动态地引用不同的单元格或区域。
  • 减少了硬编码的引用,使得公式更容易维护和更新。

类型

  • 基本的VLOOKUP查找。
  • 结合INDIRECT的动态范围查找。
  • 结合文本函数的动态列名或条件查找。

应用场景

  • 当你需要根据用户输入或外部数据源动态地查找信息时。
  • 当你需要引用表格中不是固定位置的列时。
  • 当你需要构建复杂的报表或数据分析时。

遇到的问题及解决方法: 如果你在使用这些函数组合时遇到了问题,比如公式返回错误或预期之外的结果,可能的原因包括:

  • 引用的单元格范围不正确。
  • 文本字符串格式不正确,导致INDIRECT无法正确解析。
  • VLOOKUP的查找值不在首列,或者查找区域没有正确设置。

解决方法

  1. 检查所有引用的单元格范围是否正确,并确保它们包含了所需的数据。
  2. 使用TEXT函数或其他文本处理函数确保传递给INDIRECT的文本字符串格式正确。
  3. 确保VLOOKUP的lookup_value确实存在于table_array的首列中,并且col_index_num指向正确的列。
  4. 使用F9键来逐步检查公式中的每个部分,以确定哪一部分可能导致了错误。

例如,如果你想根据一个单元格中的列名来查找数据,可以使用以下公式:

代码语言:txt
复制
=VLOOKUP(A2, INDIRECT("B2:" & B1 & "2"), MATCH(C1, INDIRECT("B1:" & B1 & "1"), 0), FALSE)

在这个例子中,A2是要查找的值,B1包含列名的单元格,C1是列名,公式会根据C1中的列名动态地查找A2在相应列中的值。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

错误不可怕,就看你如何使用ISNA函数

要拦截和处理此类错误,可以使用ISNA函数,它可以使公式更加友好,使工作表更加美观。 ISNA函数 Excel ISNA函数用于检查单元格或公式是否存在N/A错误。...IF/ISNA组合的Excel公式 ISNA函数只能返回两个布尔值,因此可将其与IF函数结合使用,显示自定义消息: IF(ISNA(…),有错误时的文本, 没有错误时的文本) 进一步完善上面的示例,找出组...图3 VLOOKUP/ISNA组合的Excel公式 IF/ISNA组合是一个通用的解决方案,可以与任何函数一起使用,该函数在一组数据中搜索某些内容,并且在找不到查找值时返回#N/A错误。...带有VLOOKUP函数的ISNA函数的语法如下: IF(ISNA(VLOOKUP(…),“自定义文本”,VLOOKUP(…)) 也就是说:如果VLOOKUP导致一个#N/A错误,则返回自定义文本,否则返回...为了查找科目,构造了经典的VLOOKUP公式: =VLOOKUP(A2,D3:E9,2,FALSE) 然后将其嵌套在上面讨论的通用IF/ISNA公式中: =IF(ISNA(VLOOKUP(A2,D3:E9,2

9.8K20

恼人的空单元格,怎么查找,有很多办法

然后,按“Ctrl+-”组合键,在弹出的“删除”对话框中选择“整行”,单击“确定”。 如果使用公式呢?也有多种实现方法。...公式1:使用VLOOKUP函数 =VLOOKUP("*",B3:B22,1,FALSE) 这里的“*”是一个通配符。当要求VLOOKUP查找“*”时,会返回包含任何内容的第一个单元格的值。...然而,这个公式只是适用于第一个非空单元格的值是文本数据的情形。如果第一个非空单元格的值不是文本数据,它会返回第一个文本数据单元格的内容。...如果第一个非空单元格包含是可能不是文本数据,那么就要使用下面的公式。 公式2:经典的INDEX/MATCH函数 下面的公式适用于非空单元格为任意数据的情形。...(B3:B22)),1)-2) 这是一个数组公式,输入完后要按Ctrl+Shift+Enter组合键。

1.9K20
  • 精通Excel数组公式008:数组常量

    列数组常量(垂直数组常量) 如下图1和图2所示,如果使用公式引用一列中的项目,当按F9评估其值时,会看到:在花括号内放置了一组项目,文本被添加上了引号,分号意味着跨行,且项目列使用分号。 ?...行数组常量(水平数组常量) 如下图3和图4所示,如果使用公式引用一行中的项目,当按F9评估其值时,会看到:在花括号内放置了一组项目,文本被添加上了引号,数字仍保留原形式,逗号意味着跨列,且项目行使用逗号...3.表数组常量(双向数组常量) 如下图5和图6所示,如果使用公式引用行列组成的表,当按F9评估其值时,会看到:在花括号内放置了一组项目,文本被添加上了引号,数字仍保留原形式,分号意味着跨行,逗号意味着跨列...数组中的文本放置在双引号中 5. 数字、逻辑值和错误值不需要双引号 6....图8 注意到,图8所示的公式中,Excel并没有在公式两边添加花括号,这表明,在SMALL函数中使用数组常量作为参数k的值,不需要按Ctrl+Shift+Enter组合键。

    2.9K20

    Vlookup函数的大表哥介绍

    小编观点:其实Lookup函数在模糊匹配上数组用法和Vlookup的模糊匹配没有什么差异,第二个向量用法会比Vlookup灵活一些,实战用处只大了那么一点点点。 第二部分:精确匹配 ?...接下来和大家分享函数的拆分原则和思路。...小编观点:个人感觉精确匹配使用Lookup其实有点局限性,单纯的精确查找用Vlookup即可,如果是遇到精确匹配的反查,其实用Match和Index效率更高。...当然Lookup我最喜欢的应用就是实现左右相互包含时候,与Find函数的组合应用。详见我其他文章。 第三部分:特殊用法 Lookup当然也有自己比较独特的应用,在这里分享一个案例。...然后我讲第一个参数设置为一个足够大的文本,文本如何比对大小呢?是根据汉字转化为拼音进行对比,如座(zuo)的Z比汇(hui)的H大,所以座在汉字中是相对比较大的文字。

    3.2K40

    数据分析常用的Excel函数合集(上)

    把选手Tian的战队找到之后,接下来把鼠标放到G8单元格右下角位置,出现十字符号后往下拉,Excel会根据单元格的变化自动填充G9和G10单元格的公式。...如果,我们知道A1是销售部的,那么公式可以写为: =VLOOKUP(A2,销售!...A:C,3,0) 如果,我们知道A1可能在销售或财务表这2个表中,公式可以写为: =IFERROR(VLOOKUP(A2,销售!A:C,3,0),VLOOKUP(A2,财务!...INDEX 在Excel中,除了VLOOKUP函数常用来查找引用外,INDEX函数和MATCH函数组合也可用来做查找引用工作,这组函数有效弥补了VLOOKUP函数查找目标不在查找范围数据首列的缺陷。...而Substitute根据文本内容替换,需要提供替换的旧文本和新文本,以及替换第几个旧文本等。因此Replace实现固定位置的文本替换,Substitute实现固定文本替换。 ? ? 8.

    3.1K20

    八种方式实现多条件匹配

    因为我们用到了数组函数,今天很多公式都是三键结束的。 先解释一下Vlookup的第一个参数 G2&H2就是两个单元格的合并,结果就是石原里美茂名,和刚刚创建辅助列的效果一样!...变身后 第一列是:=IF(1,B1:B9&C1:C9,D1:D9) 第二列是:=IF(0,B1:B9&C1:C9,D1:D9) 所以Excel重新帮我们构建了一个新的表,这个表的第一列就是名字和城市的组合...match和index匹配可以完全实现Vlookup的应用,还可以实现反查等Vlookup本身实现不了的匹配功能。...基础函数介绍 =Match(查找什么,在哪个列找,0)返回第一个参数在第二个参数中的位置 =Index(列,返回该列第几个值)返回某个列中第N个值 两个组合就是Vlookup的应用咯! ?...重点是Match函数的应用,Match第一个参数就是两个条件合并,第二个参数本来应该接一个列,本案例我用两个列相乘,实现了每个列相同位置用文本连接符链接在一起,和创建辅助列是一样的!

    12.9K41

    数据分析常用的Excel函数

    =FIND(FIND_text, within_text, start_num) =SEARCH(要查找字符, 字符所在的文本, 从第几个字符开始查找) FIND 和 SEARCH 两个函数几乎相同,区别在于...2.反向查找 当检索关键字不在检索区域的第1列,可以使用虚拟数组公式IF来做一个调换。 =VLOOKUP(G2,IF({1,0},B2:B8,A2:A8),2,0) ?...反向查找 反向查找的固定公式用法: =VLOOKUP(检索关键字,IF({1,0},检索关键字所在列,查找值所在列),2,0) 注意:其实反向查找除了检索区域改成一个虚拟数组公式IF之外,其他和单条件查找没有区别...多条件查找 返回多列的固定公式用法: =VLOOKUP(混合引用关键字,查找范围,COLUMN(xx),0) 返回第几列就用COLUMN函数引用第几列的单元格即可。...HLOOKUP =HLOOKUP(用谁去找, 匹配对象范围, 返回第几行, 匹配方式) 和VLOOKUP的区别:HLOOKUP返回的值与查找的值在同一列上,而VLOOKUP返回的值与查找的值在同一行上。

    4.2K22

    【收藏】数据分析必会的Excel高频函数合集

    2 VLOOKUP函数 VLOOKUP函数是Excel中的一个纵向查找函数,它与LOOKUP函数和HLOOKUP函数属于一类函数,在工作中都有广泛应用。...假如两个数组全部是数值,两种方法返回的结果是一致的,当有包含文本数据时,第一种方法可以返回正确结果,第二种方法会返回错误值#VALUE。...但凡EXCEL玩的比较深的同学,都知道这货和其他函数匹配起来,特别好用。最常见的就是OFFSET+MATCH这个经典组合了。 OFFSET的作用是以指定的引用为参照系,通过给定偏移量得到新的引用。...4.2 MATCH与VLOOKUP函数组合 如何根据姓名和月份查找相应的销售量?...4.3 MATCH与INDEX函数组合 先来说说INDEX函数的作用: INDEX函数用于在一个区域中,根据指定的行和列号来返回内容。

    3.7K20

    excel中多条件查找_多条件查找用什么函数

    使用VLOOKUP+辅助列进行多条件查找 本例采用的方法是在原表的最前面加一辅助列,辅助列的公式为:=B2&C2 然后再采用VLOOKUP进行如下查找:=VLOOKUP(F2&G2,A:D,4,0)...VLOOKUP函数的数组多条件查找 本例使用了数组公式:=VLOOKUP(E2&F2,IF({1,0},A2:A7&B2:B7,C2:C7),2,0) 公式中的IF({1,0},A2:A7&B2:B7,...},这其实也是把多条件通过内存数组合并为一个条件来进行查找。...使用SUMPRODUCT进行多条件查找 SUMPRODUCT返回数组乘积之和,所用公式如下所示: =SUMPRODUCT((A2:A7=E2)*(B2:B7=F2)*C2:C7),它的实现原理和上面的SUM...VLOOKUP和CHOOSE函数组合 VLOOKUP和CHOOSE函数组合为数组公式进行查询:=VLOOKUP(E2&F2,CHOOSE(TRANSPOSE(ROW(1:2)),A2:A7&B2:B7,

    1.5K20

    精通数组公式16:基于条件提取数据

    注意,SUM函数将逻辑值转换成1或0,并且忽略文本值。 ? 图3:最终的辅助列公式使用SUM函数将AND函数的逻辑值与上方单元格中的值相加 单元格H6是一个辅助单元格。...图5:数据变化时,公式结果会自动更新 示例:使用辅助列,OR条件,VLOOKUP作为查找函数 如下图6所示,使用了OR条件的辅助列并且放置在第1列,因此可以使用VLOOKUP函数。...注意,VLOOKUP公式中的参数col_index_num使用了COLUMNS函数,当公式向下复制时,其数值将依次递增为2、3、4、5,等等。 ?...图6:使用辅助列,OR条件和VLOOKUP 注:当所有OR逻辑测试都指向同一列时,可以使用下列两种公式构造之一:ISNUMBER/MATCH函数,或者OR函数。...而ISNUMBER/MATCH函数组合运算更快且对于多个条件更容易构造。

    4.3K20

    做完这套面试题,你才敢说懂Excel

    第二个需求是将小组-销售员-产品线组合到一个单元格 合并文本,如果不想用函数,最简单的方式就是用文本连接符&,即把需要连接合并的文本用这个&连起来即可。...所以,我们还可以用到文本连接函数textjoin,其语法如下: =textjoin(文本分隔符,是否忽略空值,要连接的文本) 所以,我们的公式可以这样写: =textjoin("-",,D24,B24,...所以,我们先用文本查找函数find,确定“付”所处的位置,然后再用mid文本提取函数来进行提取。 =mid(F3,find("付",F3)-1,23) 公式如何理解呢?由里往外看。...第二个需求是将小组-销售员-产品线组合到一个单元格 合并文本,如果不想用函数,最简单的方式就是用文本连接符&,即把需要连接合并的文本用这个&连起来即可。...所以,我们还可以用到文本连接函数textjoin,其语法如下: =textjoin(文本分隔符,是否忽略空值,要连接的文本) 所以,我们的公式可以这样写: =textjoin("-",,D24,B24,

    4.8K00

    精通Excel数组公式14:使用INDEX函数和OFFSET函数创建动态单元格区域

    图1:查找并求2月份的数值之和 注意,图1所示的公式并不需要按Ctrl+Shift+Enter组合键,虽然INDEX函数返回的是一个单元格区域,其原因是没有执行直接数组操作。...下面两种情况需要按Ctrl+Shift+Enter组合键: 1.如果放置需要Ctrl +Shift + Enter进入公式的直接数组操作,则需要使用Ctrl +Shift + Enter。...4.是数字、文本,还是混合数据? 5.是否存在空单元格? 对这些问题的答案决定可能使用哪种公式。...在单元格F2中的VLOOKUP公式从单元格区域A2:C5中查找并返回相应的数据。...图5:下拉列表和VLOOKUP公式 问题是,当在单元格区域A2:C5的下方添加更多的数据时,数据有效性下拉列表和VLOOKUP公式中的相应单元格区域都不会更新。

    9.3K11

    VLOOKUP 函数使用手册: 要注意查找的格式与 lookup_value 的格式要一致

    Lookup_value 可以为数值、引用或文本字符串。当vlookup函数第一参数省略查找值时,表示用0查找。 Table_array为需要在其中查找数据的数据表。使用对区域或区域名称的引用。...特别是参照地址的值是数字时,最为明显,若搜寻的单元格格式类别为文本格式,虽然看起来都是123,但是就是抓不出东西来的。...1,2,3,0)) 在Excel 2007以上版本中,以上公式等价于 =IFERROR(vlookup(1,2,3,0),0) 这句话的意思是:如果VLOOKUP函数返回的值是个错误值的话(找不到数据)...一般来说,含有VLOOKUP函数的工作表,如果又是在别的档案里抓取数据的话,档案往往是比较大的,尤其是当你使用的档案本身就很大的时候,那每次开启和存盘都是很受伤的事情。...比方说一个表,a列是序号,b列是姓名,c列是身份证,你在d列输入其中的一个姓名,在e1得到其身份证的公式不能是=vlookup(d1,a:c,3,0),而应是=vlookup(d1,b:c,2,0).

    4.3K30

    做完这套面试题,你才敢说懂Excel

    说到“匹配”,很多人第一时间估计就会想到用vlookup函数。...vlookup函数在查找匹配上,的确是一个利器,但vlookup函数在查询的时候只能从左往右查询,且查询对象所在的列,必须要在查询区域的第一列,也就是说,只能通过A列来查询B列或其它列,而不能通过B列来逆查询...第二个需求是将小组-销售员-产品线组合到一个单元格 合并文本,如果不想用函数,最简单的方式就是用文本连接符&,即把需要连接合并的文本用这个&连起来即可。...所以,我们还可以用到文本连接函数textjoin,其语法如下: =textjoin(文本分隔符,是否忽略空值,要连接的文本) 所以,我们的公式可以这样写: =textjoin("-",,D24,B24,...所以,我们先用文本查找函数find,确定“付”所处的位置,然后再用mid文本提取函数来进行提取。 =mid(F3,find("付",F3)-1,23) 公式如何理解呢?由里往外看。

    2.3K10

    Excel公式技巧39: COUNTIF函数在文本排序中的应用

    当我们知道这些顺序后,就可以使用VLOOKUP函数来查找对应的单元格中的值,从而实现按顺序对这些单元格中的值排序。 简单地说,使用COUNTIF函数,我们可以对单元格区域中的文本排序。...如下图1所示,在单元格B6中,使用公式: =COUNTIF(C6:C15,"<="&C6) 得到单元格C6中的文本在单元格区域C6:C15的文本中,由小到大排在第10位。...将公式下拉至单元格B15,得到相应的列C中文本在单元格区域C6:C15中文本的排序位置。 ?...将该公式向下拉至单元格E15,得到排序好的文本。当将公式向下拉时,随着行的变化,ROW()-ROW(E5)的值也不断变化,从而取得相应的值。...注:本文讲解的技术学习自chandoo.org,这里对其进行了补充和扩展。

    6.3K20

    Excel公式技巧38: 向左查找值的技术

    图1 使用INDEX/MATCH函数组合的公式: =INDEX(B5:B17,MATCH(1088,D5:D17,0)) 很顺利地获得了要查找的结果。...我们知道,VLOOKUP函数通常查找并返回表右侧的值。然而,这里介绍的技术却能让VLOOKUP函数实现向左查找。...这里的关键是使用CHOOSE函数,公式如下: =VLOOKUP(1088,CHOOSE({2,1},B5:B17,D5:D17),2,0) 主要看看公式中的: CHOOSE({2,1},B5:B17,D5...如果你要使用{1,2},则需要将B5:B17和D5:D17相交换,即: =VLOOKUP(1088,CHOOSE({1,2},D5:D17,B5:B17),2,0) 将上面的公式扩展应用。...现在想要查找净销售为1088的销售人员“John”对应的客户数,可以使用公式: =VLOOKUP(1088,CHOOSE({1,2,3},D5:D17,B5:B17, 使用CHOOSE函数生成了一个供VLOOKUP

    2.1K10

    Excel的匹配函数全应用

    今天会和大家分享日常使用频率最高匹配函数用法,谈到匹配函数,首先想到的就是Vlookup,嗯,今天就是要分享Vlookup和他的小伙伴们的应用。...第一部分:Vlookup常见错误 本次课程不讨论拼写错误,直接和大家分享Vlookup常见错误一。第一个错误是什么呢?...先上图总结一下: 接下来将精准匹配已经编辑好公式的第一个单元格右下角双击,公式自动填充,发现后面两个显示的是N/A,在这里要和各位朋友说明,这个符号不代表公式错误,只是代表没有查到对应的返回值。...以上就是Lookup函数和Find函数的基本用法!不知道各位是否已经迷茫、彷徨、怀疑人生了呢! 莫急,下面有两个函数组合嵌套来折磨你!...如果你感觉这个函数还不够刺激的话,可以看一下我的公众号其他文章,上面有更刺激的函数嵌套组合应用。

    3.8K51
    领券