从Excel单元格的文字中拆分出数字,如何删除列之间多余的跳空?

Excel学习世界 2024-08-13 21:26:10

这是对之前教过的一个案例的优化:从文字数字混合的单元格中将所有数字提取出来,连续的数字放在同一个单元格中,不连续的分列放置。

但是要求分列后去除所有跳空单元格,也就是说,每一行的非空区域必须是连续的。

案例:

将下图 1 中 C 列的所有数字都提取出来,每一段连续的数字放在一个单元格中,提取出来的数字列之间不得有跳空单元格。

效果如下图 2 所示。

解决方案:

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

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

表格已上传至 Power Query。

3. 选择工具栏的“添加列”-->“自定义列”

4. 在弹出的对话框中输入以下公式 --> 点击“确定”:

Text.Remove([金额明细],{"一".."龥"})

公式的作用是删除单元格中的所有中文字符。

5. 删除“金额明细”列。

6. 选择工具栏的“添加列”-->“索引列”

7. 选中“自定义”列 --> 选择工具栏的“转换”-->“拆分列”-->“按分隔符”

8. 在弹出的对话框中点开“高级选项”--> 选择“行”--> 点击“确定”

9. 点击“自定义”旁边的箭头按钮 --> 在弹出的菜单中选择“删除空”

10. 选择“索引”列 --> 选择工具栏的“主页”-->“分组依据”

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

12. 将公式中的 Table.RowCount(_), Int64.Type 替换成 Table.AddIndexColumn(_,"金额",1,1, Int64.Type)。

13. 点开“计数”旁边的扩展钮 --> 取消勾选“索引”和“使用原始列名作为前缀”--> 点击“确定”

14. 选中“金额”列 --> 选择工具栏的“转换”-->“透视列”

15. 在弹出的对话框的“值列”中选择“自定义”--> 点开“高级选项”--> 选择“不要聚合”--> 点击“确定”

16. 删除“索引”列。

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

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

右边绿色的表格较之前的版本就优化了,提取出来的数字去除了空单元格,尽可能靠左放。

0 阅读:3

Excel学习世界

简介:Excel 学习交流