Excel 中用“-”表示数据区间,如何将区间中的每个数拆分成一行?

摘要:很多同学会觉得 Excel 单个案例讲解有些碎片化,初学者未必能完全理解和掌握。不少同学都希望有一套完整的图文教学,从最基础的概念开始,一步步由简入繁、从入门到精通,系统化地讲解 Excel 的各个知识点。

很多同学会觉得 Excel 单个案例讲解有些碎片化,初学者未必能完全理解和掌握。不少同学都希望有一套完整的图文教学,从最基础的概念开始,一步步由简入繁、从入门到精通,系统化地讲解 Excel 的各个知识点。

现在终于有了,以下专栏,从最基础的操作和概念讲起,用生动、有趣的案例带大家逐一掌握 Excel 的操作技巧、快捷键大全、函数公式、数据透视表、图表、打印技巧等……学完全本,你也能成为 Excel 高手。

解答网友提问:合并单元格中有独立的数字,也有用连接符号连起来的区间,但是没有规律。如何将合并单元格中包含的每一个数字拆分成一行?

下图 1 的“地址”列中“-”表示区间,802-804 就是 802 至 804。

根据这个规则,将数据表整理成规范的一维表,地址和物资一一对应。

效果如下图 2 所示。

1. 选中数据表的任意单元格 --> 选择工具栏的“数据”-->“从表格”

2. 在弹出的对话框中保留默认设置 --> 点击“确定”

表格已经上传至 Power Query。

3. 选中“地址”列 --> 选择工具栏的“转换”-->“提取”-->“分隔符之前的文本”

4. 在弹出的对话框中输入“室”--> 点击“确定”

6. 在弹出的对话框中将列名设置为“门牌号”--> 输入以下公式 --> 点击“确定”:

Expression.Evaluate("{"&Text.Replace([地址],"-","..")&"}")

公式释义:

Text.Replace([地址],"-",".."):将“地址”列中的“-”替换为“..”;Expression.Evaluate("{"&...&"}"):Expression.Evaluate 的作用是将文本表达式或者 M 公式进行求值,返回一个结果;此处的公式作用是将大括号与“..”连接起来,变成 {地址1..地址2},成为一个数值区间表达式

7. 点开“门牌号”旁边的扩展钮 --> 选择“扩展到新行”

8. 删除“地址”列,将“门牌号”列拖动到最前面。

9. 选择工具栏的“主页”-->“关闭并上载”-->“关闭并上载至”

10. 在弹出的对话框中选择“表”--> 选择“现有工作表”及所需上传至的位置 --> 点击“加载”

这样就得到了一个非常规范的列表。

来源:Excel学习世界

相关推荐