SWITCH 函数¶
1. 函数概述¶
SWITCH 是 Excel 用来做“多分支条件判断”的函数。它会先计算一个表达式(expression),然后依次与多个候选值进行匹配:
- 如果匹配成功:返回对应的结果值
- 如果都不匹配:返回默认值(如果你提供了默认值);否则返回
#N/A
当你原本需要写很多层 IF(嵌套 IF)时,SWITCH 往往更清晰、更易维护,尤其适合“某个值等于 A/B/C… 时分别返回不同结果”的场景。
2. 基础语法¶
说明:
value与result必须成对出现;最后可选的default用于兜底返回。
3. 参数说明¶
| 参数 | 是否必填 | 含义 | 备注 |
|---|---|---|---|
expression |
是 | 要被判断/匹配的表达式或单元格值 | 先计算一次,然后与后面的 value 逐个比较 |
value1 |
是 | 第 1 个候选匹配值 | 与 expression 做相等比较 |
result1 |
是 | 第 1 个匹配成功时返回的结果 | 与 value1 一一对应 |
value2, result2 … |
否 | 更多候选值与对应返回结果 | 按顺序匹配,命中即停止 |
default |
否 | 所有候选值都不匹配时返回的默认结果 | 不写则不匹配返回 #N/A |
匹配规则要点:
SWITCH是“相等匹配”思路:比较expression = valueN是否成立- 从
value1开始按顺序匹配,先匹配到的先返回 default建议在业务表格中尽量提供,避免出现#N/A
4. 基础用法示范¶
4.1 文本枚举映射¶
需求:A2 是状态码,返回中文说明。
| A 列(状态码) | B 列(状态说明) |
|---|---|
| New | 新建 |
| Doing | 进行中 |
| Done | 已完成 |
在 B2 输入:
- A2 为
New→ 返回新建 - A2 为其他未列出的值 → 返回
未知状态
4.2 数值分段:等级映射(固定几档)¶
需求:A2 是评分(1~5),映射为等级文案。
这种“离散值映射”是 SWITCH 最典型的用法,比多层 IF 更直观。
4.3 结合表达式:先计算再匹配¶
需求:A2 为实际得分(可能带小数),希望按四舍五入后的整数档位输出。
这里的 expression 使用 ROUND(A2,0),表示先把 A2 四舍五入成整数再匹配。
4.4 处理多个字段组合:用拼接构造“匹配键”¶
需求:根据“城市 + 会员类型”决定折扣策略。
- 城市在 A2,会员类型在 B2
- 不同组合返回不同折扣
- 这里通过
A2&"|"&B2生成一个组合键(例如上海|VIP) default返回1,表示无折扣
4.5 不写默认值的效果:不匹配返回 #N/A¶
当 A2 既不是 A 也不是 B 时,会返回 #N/A。
如果这是业务表格,通常更建议加上默认值:
5. 总结¶
SWITCH适合处理“一个值对应多个可能结果”的场景,本质是“相等匹配 + 多分支返回”。- 相比嵌套
IF,SWITCH的结构更扁平、可读性更强,后期维护(新增分支)更方便。 -
使用时牢记三点:
value与result必须成对- 按顺序匹配,命中即返回
- 推荐提供
default,让公式输出更稳定、更可控