如何通过VBA使用仅含数字的Custom List实现数据自定义排序?
纯数字自定义序列排序方案(不修改原工作表内容)
方法1:Power Query实现(推荐,无额外内容)
- 选中要排序的数据区域,点击「数据」选项卡的「从表格/区域」,勾选「我的表格有标题」进入Power Query编辑器
- 选中目标列,转换为文本类型:点击「转换」→「数据类型」→「文本」
- 点击「开始」→「排序」→「自定义排序」,在「次序」下拉菜单中选择你创建的纯数字自定义序列
- 排序完成后,点击「开始」→「关闭并上载」→「关闭并上载至」,选择「仅创建连接」;右键该连接选择「加载到」,指定原数据的起始位置覆盖即可,全程不会添加新内容
方法2:排序对话框直接设置(无需添加辅助列)
- 选中待排序区域,点击「数据」→「排序」打开排序对话框
- 点击「添加条件」,列选择目标列,排序依据选「单元格值」,次序选「自定义序列」
- 如果自定义序列未生效,说明Excel将列识别为数值类型——点击对话框中的「选项」,勾选「将数字视为文本」,再选择自定义序列即可
- 确认设置后点击「确定」,即可按自定义序列排序,全程不会修改原表内容
为啥纯数字自定义序列默认不生效?
Excel会自动将数字内容识别为数值类型,排序时优先按数值大小逻辑处理;而自定义序列默认是针对文本型内容的排序规则,所以需要先让Excel把数字当作文本看待,才能触发自定义序列的排序逻辑。
内容的提问来源于stack exchange,提问作者Pramod Pandit
相关产品推荐
相关产品推荐

