Excel IFS+VLOOKUP:多条件查数一步成,告别嵌套!

你是不是还在写 “VLOOKUP 套 IF” 吃到吐?想查 “不同部门员工的薪资范围”,得套 3 层 IF+VLOOKUP,改一个条件就拆公式,眼睛都盯花了?

今天要安利的 “IFS+VLOOKUP” 组合,堪称 Excel 查询界的 “智能导航”——IFS 分场景定规则,VLOOKUP 精准找数据,不用嵌套,多条件查询一步到位,比单独用 VLOOKUP 快 10 倍!

先看效果:从 “嵌套绕晕” 到 “规则直给”

没组合使用时,多场景查询像 “走迷宫”,公式长到翻页:

需求

手动写嵌套 IF+VLOOKUP(复杂易错)

查不同部门员工的薪资(技术部查薪资表 1,销售部查薪资表 2)

=IF (B2="技术部",VLOOKUP (A2, 技术薪资表,2,0),IF (B2="销售部",VLOOKUP (A2, 销售薪资表,2,0),IF (B2="行政部",VLOOKUP (A2, 行政薪资表,2,0),"无对应部门")))

按成绩等级查评语(A 查优秀表,B 查良好表)

=IF (C2="A",VLOOKUP (C2, 优秀评语,2,0),IF (C2="B",VLOOKUP (C2, 良好评语,2,0),IF (C2="C",VLOOKUP (C2, 合格评语,2,0),"无等级")))

用 IFS+VLOOKUP 后,公式清爽,规则一目了然:

需求

公式

结果

按部门查薪资

=IFS (B2="技术部",VLOOKUP (A2, 技术薪资表,2,0),B2="销售部",VLOOKUP (A2, 销售薪资表,2,0),B2="行政部",VLOOKUP (A2, 行政薪资表,2,0),TRUE,"无对应部门")

自动匹配部门查薪资

按等级查评语

=IFS (C2="A",VLOOKUP (C2, 优秀评语,2,0),C2="B",VLOOKUP (C2, 良好评语,2,0),C2="C",VLOOKUP (C2, 合格评语,2,0),TRUE,"无等级")

瞬间出对应评语

关键优势:每个场景对应一个 “VLOOKUP”,像 “填空” 一样简单,改规则只需动一行,再也不用拆嵌套!

先搞懂基础:为什么要 “IFS+VLOOKUP”?

两个函数分工明确,完美解决多场景查询:

  • IFS:Excel 365 新增的 “多条件判断神器”,支持 “条件 1→执行 1,条件 2→执行 2...”,满足哪个条件就跑对应的操作,不用套娃;
  • VLOOKUP:经典查询函数,按 “查找值” 在指定表格里找数据,是 Excel 里的 “数据定位仪”。

核心逻辑:
=IFS(场景1, VLOOKUP(场景1的查询), 场景2, VLOOKUP(场景2的查询), ..., TRUE, 默认结果) → 先分场景,再按场景调用对应的 VLOOKUP 查数据。

3 个实战场景,覆盖工作 90% 需求

场景 1:多部门薪资查询 —— 按部门调用不同薪资表

公司分 “技术部、销售部、行政部”,各部门薪资存在独立表格,想输员工姓名和部门,自动查对应薪资,用 IFS+VLOOKUP:

各部门薪资表

  • 技术薪资表(A-B 列):
  • 姓名薪资张三9500李四8800
  • 销售薪资表(A-B 列):
  • 姓名薪资王五8000赵六7500
  • 行政薪资表(A-B 列):
  • 姓名薪资孙七7200周八6800

查询表(A-C 列)

姓名(A 列)

部门(B 列)

薪资(C 列,公式列)

张三

技术部

=IFS(...)

王五

销售部

=IFS(...)

孙七

行政部

=IFS(...)

公式:=IFS(B2="技术部",VLOOKUP(A2,技术薪资表,2,0),B2="销售部",VLOOKUP(A2,销售薪资表,2,0),B2="行政部",VLOOKUP(A2,行政薪资表,2,0),TRUE,"无对应部门")

姓名

部门

公式

薪资结果

张三

技术部

=IFS (B2="技术部",VLOOKUP (A2, 技术薪资表,2,0),B2="销售部",VLOOKUP (A2, 销售薪资表,2,0),B2="行政部",VLOOKUP (A2, 行政薪资表,2,0),TRUE,"无对应部门")

9500

王五

销售部

同上

8000

孙七

行政部

同上

7200

吴九

财务部

同上

无对应部门

HR 算工资时,不用再切换表格查数据,输姓名和部门就出结果,比手动找快 20 倍!

场景 2:成绩等级查评语 —— 按等级调用不同评语表

老师想按学生 “成绩等级(A/B/C)” 自动生成评语,A 等级查 “优秀评语表”,B 查 “良好评语表”,C 查 “合格评语表”,用 IFS+VLOOKUP:

各等级评语表

  • 优秀评语表(A-B 列):
  • 等级评语A成绩优异,继续保持
  • 良好评语表(A-B 列):
  • 等级评语B表现良好,潜力十足
  • 合格评语表(A-B 列):
  • 等级评语C基本达标,仍需努力

学生成绩表(A-C 列)

姓名(A 列)

等级(B 列)

评语(C 列,公式列)

小明

A

=IFS(...)

小红

B

=IFS(...)

小刚

C

=IFS(...)

公式:=IFS(B2="A",VLOOKUP(B2,优秀评语表,2,0),B2="B",VLOOKUP(B2,良好评语表,2,0),B2="C",VLOOKUP(B2,合格评语表,2,0),TRUE,"无对应等级")

姓名

等级

公式

评语结果

小明

A

=IFS (B2="A",VLOOKUP (B2, 优秀评语表,2,0),B2="B",VLOOKUP (B2, 良好评语表,2,0),B2="C",VLOOKUP (B2, 合格评语表,2,0),TRUE,"无对应等级")

成绩优异,继续保持

小红

B

同上

表现良好,潜力十足

小刚

C

同上

基本达标,仍需努力

期末写评语时,不用再逐人想话术,公式自动生成,改等级也能实时更新,效率翻 10 倍!

场景 3:多地区快递费查询 —— 按地区调用不同运费表

电商按 “地区(江浙沪 / 京津冀 / 其他)” 算快递费,不同地区对应不同运费表,想输地区和重量自动算运费,用 IFS+VLOOKUP:

各地区运费表(按重量 kg 算费)

  • 江浙沪运费表(A-B 列):
  • 重量运费1628
  • 京津冀运费表(A-B 列):
  • 重量运费1729
  • 其他地区运费表(A-B 列):
  • 重量运费110212

订单表(A-C 列)

地区(A 列)

重量(kg,B 列)

运费(C 列,公式列)

江浙沪

1

=IFS(...)

京津冀

2

=IFS(...)

其他

1

=IFS(...)

公式:=IFS(A2="江浙沪",VLOOKUP(B2,江浙沪运费表,2,0),A2="京津冀",VLOOKUP(B2,京津冀运费表,2,0),A2="其他",VLOOKUP(B2,其他地区运费表,2,0),TRUE,"无对应地区")

地区

重量

公式

运费结果

江浙沪

1

=IFS (A2="江浙沪",VLOOKUP (B2, 江浙沪运费表,2,0),A2="京津冀",VLOOKUP (B2, 京津冀运费表,2,0),A2="其他",VLOOKUP (B2, 其他地区运费表,2,0),TRUE,"无对应地区")

6

京津冀

2

同上

9

其他

1

同上

10

客服算运费时,不用再翻运费表核对,输地区和重量就出结果,避免算错引发客诉!

避坑指南:这 3 个错误新手必犯

  1. IFS 场景顺序搞反
    把 “江浙沪” 场景写在 “其他” 后面,会导致江浙沪的订单先匹配到 “其他”(因为 “其他” 是宽泛条件),返回错误运费。记住:
    场景要从 “具体” 到 “宽泛” 排,具体场景先写!
  2. VLOOKUP 的 “查找列” 位置错
    把技术薪资表的 VLOOKUP 写成VLOOKUP(A2,技术薪资表,1,0)(返回第 1 列姓名),而不是第 2 列薪资,导致查不到金额。确认 VLOOKUP 的 “返回列号”—— 要查的内容在表格第几列,列号就填几!
  3. 忘记加 “TRUE, 默认结果”
    所有场景都不满足时(如部门填 “财务部”),IFS 会返回 #N/A 错误。最后一定要加TRUE,默认结果(如TRUE,"无对应部门"),覆盖所有意外情况!

最后送 3 个万能公式模板

直接套用,效率拉满:

  1. 多部门查薪资:
    =IFS(部门列="部门1",VLOOKUP(姓名列,部门1薪资表,2,0),部门列="部门2",VLOOKUP(姓名列,部门2薪资表,2,0),部门列="部门3",VLOOKUP(姓名列,部门3薪资表,2,0),TRUE,"无对应部门")
  2. 多等级查评语:
    =IFS(等级列="等级1",VLOOKUP(等级列,等级1评语表,2,0),等级列="等级2",VLOOKUP(等级列,等级2评语表,2,0),等级列="等级3",VLOOKUP(等级列,等级3评语表,2,0),TRUE,"无对应等级")
  3. 多地区查运费:
    =IFS(地区列="地区1",VLOOKUP(重量列,地区1运费表,2,0),地区列="地区2",VLOOKUP(重量列,地区2运费表,2,0),地区列="地区3",VLOOKUP(重量列,地区3运费表,2,0),TRUE,"无对应地区")

现在打开你的 Excel,找一组多场景数据试试 “IFS+VLOOKUP”,是不是瞬间觉得 “复杂查询原来这么简单”?这个组合让你告别嵌套 IF 的痛苦,规则再多也能清晰排列,改起来超省心!

觉得有用的话,点赞收藏,转发给总在写嵌套公式的同事!你平时还遇到过哪些多场景查询难题?评论区告诉我,教你用这组函数解决!

相关文章

cython如何调用C语言的函数?_c 中如何调用python

在 Cython 中调用 C 语言函数主要通过以下几种方式实现:1. 使用 cdef extern 声明外部 C 函数基本语法cdef extern from "头文件.h":返回类型...

C/C++函数调用的奥秘_c++函数调用原理

在C/C++编程的世界里,函数调用是程序运行的核心机制之一。然而,许多程序员在日常开发中,往往只关注代码的逻辑,而忽略了函数调用背后的底层细节。今天,就让我们一起深入探索C/C++函数调用的全过程,从...

C++成员函数如何工作?this指针、name mangling 成员函数指针解析

0.引言 在C++面向对象编程中,成员函数是对象行为的核心载体。我们每天都在使用成员函数,但却很少深入思考其底层的实现机制:为什么成员函数可以直接访问成员变量?编译器如何区分不同类的同名函数?静态成员...

C语言入门:学生成绩管理程序的完善(1):用文件保存数据

这是C语言入门的第27篇文章。今天讲学生成绩管理程序的完善:怎样利用文件来保存数据。还是昨天的问题:我怎么知道一个文件的内容是什么?我怎么知道比如一行有多少个数,多少个数以后是换行?这是因为文件是我们...

C语言应用笔记:常用的printf打印输出不同类型数据

我叫程序员阿虾, 在终端前摸过太多凌晨, 熟悉printf这一行字带来的安心与危险。今天想跟你聊聊我踩过的坑, 和一些别人不常说的细节, 用第一人称把经验交给你, 有点唠叨, 希望你少走弯路。为什么要...

C语言应用笔记:简单的最大最小值比较

使用宏定义实现泛型比较函数,用于求取两个值的最大值和最小值。核心宏定义解析#define MAX(x, y) ((x) > (y) ? (x) : (y)) // 返回两个值中较大的一个 #de...