一文掌握Excel新函数CHOOSECOLS使用教程与快速处理技巧
时间:2026-07-11 | 作者:318050 | 阅读:0什么是 CHOOSECOLS?
Excel 里有一类“新式武器”——动态数组函数,用起来特别顺手。CHOOSECOLS 就是其中之一。
它的核心功能是:从一个表格区域里,按列号精准提取你想要的列。
最适合的场景:只从大表里抽几列出来做临时报表,或者快速调整字段顺序。
最常用的一句语法是:
=CHOOSECOLS(数据区域, 列号1, 列号2, ...)
举个例子:销售明细表里有订单号、销售日期、客户、城市、商品、销售额、负责人,一共 7 列。现在你只想要订单号、客户和销售额三列。
直接在空白单元格里写下:
=CHOOSECOLS(A1:G7, 1, 3, 6)
回车之后,结果会自动向右向下溢出,生成一张只有这三列的新表。不需要手动复制粘贴,更不用写复杂的嵌套公式。
本文以 Microsoft Excel 16.93 版本为例。演示用的源数据在 A 到 G 列,I 列往后是公式输出的区域。这个函数特别适合做日报、周报时快速精简列,还能跟 FILTER、SORT 这些函数搭配,实现筛选 + 列重排一步到位。
第一步:准备好带完整字段的源表
写公式之前,先理清源表里每个字段的位置。本例中 A 到 G 共 7 列,依次是:
- 订单号(第 1 列)
- 销售日期(第 2 列)
- 客户(第 3 列)
- 城市(第 4 列)
- 商品(第 5 列)
- 销售额(第 6 列)
- 负责人(第 7 列)
注意:列号是按你选中的区域内部从左到右计算的,不是按工作表自带的列标 A、B、C。比如你选中 B1:G7,那么 B 列就成了第 1 列,C 列是第 2 列,依此类推。

第二步:输入 CHOOSECOLS 公式提取指定列
选中空白单元格 I2,输入:
=CHOOSECOLS(A1:G7, 1, 3, 6)
敲回车后,Excel 自动把 A1:G7 里的第 1 列(订单号)、第 3 列(客户)、第 6 列(销售额)提取出来。表头和数据一起显示在 I2 及右侧的空白单元格里。
注意:公式所在单元格的右边和下方一定要有足够的空白区域,否则会报 #SPILL! 溢出错误。

第三步:调整列号顺序快速重排字段
如果想把销售额放到最前面,根本不用复制粘贴原表,直接把参数顺序改成:
=CHOOSECOLS(A1:G7, 6, 3, 1)
输出时第一列就是销售额,第二列是客户,第三列是订单号。函数的输出顺序完全遵照你写的列号顺序——第一个填 6,结果第一列就是第 6 列的内容。
同一个列号还能重复写。比如你想让销售额出现两次,直接写两个 6 即可,临时复制某一列非常方便。

第四步:排查列号越界和溢出区域问题
源区域 A1:G7 总共只有 7 列。如果你写成 =CHOOSECOLS(A1:G7, 8),第 8 列根本不存在,Excel 会返回 #VALUE! 错误。
如果列号没写错却弹出 #SPILL!,多半是输出区域里已经填了别的数据。把公式右边和下方的单元格清空之后重新计算即可。

CHOOSECOLS 语法
完整语法是:
=CHOOSECOLS(array, col_num1, [col_num2], ...)
其中:
array:要提取列的数组或单元格区域col_num1:第一个必填的列序号[col_num2]:可选,继续添加更多列序号
| 参数 | 是否必填 | 说明 | 本例 |
|---|---|---|---|
array | 必填 | 要从中提取列的区域或数组 | A1:G7 |
col_num1 | 必填 | 第一个要返回的列序号 | 1 返回订单号 |
[col_num2] | 选填 | 继续指定更多列,顺序就是输出顺序 | 3,6 返回客户和销售额 |
| 负数列号 | 可用 | 从数组右侧倒数取列 | -1 返回最后一列负责人 |
版本兼容
CHOOSECOLS 属于 Microsoft 365 的动态数组函数。本文示例在 16.93 版本的 Excel 上验证通过。
永久授权的旧版 Excel(比如 2016、2019)大概率没有这个函数。打开带此公式的文件会显示 _xlfn.CHOOSECOLS 或名称错误。如果使用 WPS 或旧版 Excel,需要先确认是否支持。
常见错误
- #VALUE!:多数是列号写错了——源区域只有 7 列,你填了个 8。
- #SPILL!:结果要展开的位置被占了,清空输出区域即可。
- #NAME:不是版本不支持,就是把函数名拼错了(大小写无影响,但单词不能写错)。
特别容易踩的坑:如果你把选中的区域从 A1:G7 改成 B1:G7,列号会重新从 B 列开始算第 1 位,不会接着原来 A 列的序号来数。所以选定区域时一定要清楚第 1 列是哪一列。
扩展示例
只想提取最后一列的负责人信息,可以写:
=CHOOSECOLS(A1:G7, -1)
想把销售额和负责人放到报表最前面,可以写:
=CHOOSECOLS(A1:G7, 6, 7, 1, 3)
如果要先筛选出负责人是“林晓”的所有记录,再提取订单号、客户、销售额三列,一步完成:
=CHOOSECOLS(FILTER(A1:G7, G1:G7="林晓"), 1, 3, 6)
实际做报表的时候,先用 FILTER 筛选行,再用 CHOOSECOLS 精简列,比反复复制粘贴要稳得多,处理速度也更快——动一次公式就能更新,不用手动调整大量数据。
来源:整理自互联网
免责声明:文中图文均来自网络,如有侵权请联系删除,心愿游戏发布此文仅为传递信息,不代表心愿游戏认同其观点或证实其描述。
相关文章
更多-
- Excel中F8键的妙用技巧详解
- 时间:2026-07-13
-
- Excel 2016隐藏公式仅显示结果的设置方法
- 时间:2026-07-12
-
- 火狐浏览器处理大型在线Excel表格缓慢原因解析
- 时间:2026-07-12
-
- Excel中如何批量给数字加1的简单快速方法
- 时间:2026-07-12
-
- Excel右键删除灰色无法使用怎么办
- 时间:2026-07-12
-
- PDF转换器将Excel表格转为TXT格式的详细操作步骤教程
- 时间:2026-07-11
-
- 手机WPS制作Excel表格的方法步骤与设置要点
- 时间:2026-07-11
-
- Excel数据录入窗口调出方法及办公场景应用
- 时间:2026-07-11
精选合集
更多大家都在玩
大家都在看
更多-
- 加速浏览器弹窗广告关闭与拦截设置方法教程
- 时间:2026-07-13
-
- 年6月25日支付宝蚂蚁庄园小鸡今日答案
- 时间:2026-07-13
-
- 妈妈网孕育切换身份方法教程
- 时间:2026-07-13
-
- CDR制作切割立体心形详细教程
- 时间:2026-07-13
-
- 智学网APP学习资源分类查看全流程操作指南
- 时间:2026-07-13
-
- 燕云十六声真奇人大圆满成就攻略
- 时间:2026-07-13
-
- 解忧梦幻岛下载地址在哪
- 时间:2026-07-13
-
- 燕云十六声塔是谁成就攻略
- 时间:2026-07-13