使用 CHOOSE 选择项目
根据索引编号返回列表中的第 n 个值
使用 CHOOSE 选择项目 是 CoddyKit 上的免费 Excel Formulas Academy 课时。 这是第 3 节课,共 4 节。 你可以在下方免费阅读本课时的完整内容 — 然后在浏览器中使用内置代码编辑器和全天候 AI 导师进行实践。 这是 Excel Formulas Academy 学习路径的一部分,你的进度在网页和 CoddyKit 应用中同步。 Excel Formulas Academy 课程共包含 4 节课。
CHOOSE 的作用
CHOOSE 函数根据位置编号从列表中选出一个项目。您向它提供一个索引,再提供一系列值,它就会返回位于该索引处的值。
您可以把它想象成一个编号菜单:向 CHOOSE 提供数字 3,它就会返回第三个项目,而不论该项目是什么。
=CHOOSE(2, "Red", "Green", "Blue")CHOOSE 的语法
结构为 CHOOSE(index_num, value1, value2, value3, ...)。
- index_num 是一个从 1 到值的总数之间的数字。
- 每个值都可以是文本、数字、单元格引用,甚至可以是公式。
索引采用从 1 开始编号:索引为 1 时返回 value1,索引为 2 时返回 value2,以此类推。
=CHOOSE(A2, "Low", "Medium", "High")第一个示例
假设 A2 中存放优先级 1、2 或 3。您希望显示文字而不是数字。CHOOSE 会直接将数字转换为对应的标签。
如果 A2 为 1,您会得到“低”;如果为 2,得到“中”;如果为 3,得到“高”。数字本身就是位置选择器。
=CHOOSE(A2, "Low", "Medium", "High")索引必须有效
索引必须落在 1 和您提供的值的数量之间。如果在上面的示例中 A2 为 0、4 或空白,CHOOSE 就会返回 #VALUE! 错误。
小数部分会被直接截去,因此 2.9 会按 2 处理。为了确保安全,请确认您的索引只能生成能够指向列表中实际位置的数字。
=CHOOSE(2.9, "A", "B", "C")将数字转换为月份名称
一个非常常见的用途是将月份编号转换为月份名称。当 A2 中有月份编号时,CHOOSE 会按顺序列出全部十二个月份名称。
当日期函数以数字形式提供 MONTH(...),而您想显示易读的名称时,这种方法非常方便。
=CHOOSE(A2,"Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec")使用单元格引用的 CHOOSE
这些值不必是直接输入的字面值。它们可以是单元格引用,这样 CHOOSE 就能从工作表的其他位置提取实时值。
在这里,公式会根据 A2 中的索引,返回 B1、C1 或 D1 的内容。修改这些单元格后,结果也会随之更新。
=CHOOSE(A2, B1, C1, D1)返回计算结果
每个值也可以是公式。这使 CHOOSE 能够充当不同计算的小型切换台。
假设 A2 中的等级选择应用于 B2 价格的折扣率。索引 1 表示打 5% 折扣,索引 2 表示打 10% 折扣,索引 3 表示打 20% 折扣。
=CHOOSE(A2, B2*0.95, B2*0.9, B2*0.8)CHOOSE 与 SWITCH 的区别
CHOOSE 和 SWITCH 可以解决类似的问题,但方式不同:
- CHOOSE 按位置进行选择。索引必须是连续的数字,例如 1、2、3。
- SWITCH 通过匹配值进行选择,匹配值可以是任意代码或文本。
如果选择器本身就是一个清晰的计数数字,请使用 CHOOSE。如果要匹配 "STD" 或 "EXP" 这样的任意代码,请使用 SWITCH。
深入示例
假设月份数字位于 A2 中,我们来快速生成季度标签。我们可以将 CHOOSE 包裹在一个计算外面,将月份转换为 1 到 4。
ROUNDUP(A2/3,0) 会将 1 到 3 月转换为第 1 季度,将 4 到 6 月转换为第 2 季度,依此类推。然后,CHOOSE 会将结果映射为标签。
=CHOOSE(ROUNDUP(A2/3,0),"Q1","Q2","Q3","Q4")防止索引超出范围
由于超出范围的索引会导致 #VALUE!,因此最好保护公式。将公式包裹在 IFERROR 中可以提供友好的备用结果。
这样,如果索引无效,用户看到的就是 "Invalid",而不是错误代码,从而让工作表保持整洁、专业。
=IFERROR(CHOOSE(A2,"Low","Medium","High"),"Invalid")CHOOSE 的最佳实践
请遵循以下做法,让 CHOOSE 顺畅运行:
- 确保索引是从 1 到值数量之间的整数。
- 按照索引所要求的确切顺序列出各个值。
- 如果索引可能超出范围,请使用
IFERROR包裹公式。 - 选择器是自然计数数字时优先使用 CHOOSE;代码任意时优先使用 SWITCH。
快速检查
测试您对 CHOOSE 选择值方式的理解。
回顾:使用 CHOOSE 选择项目
您已经学会使用 CHOOSE 从列表中选择第 n 个项目。要点如下:
- 语法为
CHOOSE(index_num, value1, value2, ...),索引从 1 开始。 - 超出范围的索引会返回
#VALUE!;请使用IFERROR进行保护。 - 值可以是文本、数字、单元格引用或公式。
- 选择器是计数数字时使用 CHOOSE;匹配任意代码时使用 SWITCH。
=CHOOSE(A2, "Low", "Medium", "High")常见问题解答
「使用 CHOOSE 选择项目」课时是免费的吗?
是的 — 「使用 CHOOSE 选择项目」的完整文本可在网页上免费阅读。要进行交互式练习(内置代码编辑器和全天候 AI 导师)并解锁 Excel Formulas Academy 课程的其余内容,请升级到 CoddyKit PRO。 Excel Formulas Academy 课程共包含 4 节课。
「使用 CHOOSE 选择项目」这节课中我会学到什么?
根据索引编号返回列表中的第 n 个值 你通过在浏览器中直接运行的动手代码来练习 Excel Formulas Academy,全天候 AI 导师会在你学习这节课的过程中回答你的问题。
学习 Excel Formulas Academy 需要有经验吗?
无需任何先前经验。CoddyKit 上的 Excel Formulas Academy 课程适合初学者到高级学习者,你可以从这里开始或从头开始,按照自己的节奏学习。 这是第 3 节课,共 4 节。
「使用 CHOOSE 选择项目」课时需要多长时间?
大多数 CoddyKit 课程大约需要 5–10 分钟。每节课都很精短且互动,所以你能稳步进步,并在网页和应用中从离开的地方继续。
我能在这节 Excel Formulas Academy 课中编写并运行代码吗?
能。每节 Excel Formulas Academy 课都包含内置代码编辑器,你可以在浏览器中直接编写并运行真实代码,并获得即时 AI 反馈 — 无需本地设置。
此课程中的所有课时
- 嵌套 IF 处理多种结果
- 使用 SWITCH 选择匹配分支
- 使用 CHOOSE 选择项目
- 让复杂逻辑保持可读