在使用 Excel 处理数据时,常常会遇到从单元格中提取特定内容的情况。今天就以一个实际案例,教大家两种实用的方法,从单元格中提取出文字前面的数字,并将数字和中文分别放置在不同列中。
现有数据如下图 1 所示,我们的目标是将单元格中的数字和中文分别提取出来,各放一列,最终效果如下图 2 所示。
图 1
图 2
方法1:巧用公式提取数字
1、提取数字公式及操作:
在 B2 单元格中输入公式 “=LOOKUP (9^9,--LEFT (A2,ROW ($1:$20)))” ,然后将鼠标指针移至 B2 单元格右下角,当指针变为黑色十字时,按住鼠标左键向下拖动,下拉复制公式。
公式详细释义:
“ROW($1:$20)”:这个部分会生成一个包含 1 至 20 的数组。之所以选择生成 20 个数组,是因为在本案例中的数字没有超过 20 位的。如果在实际操作中遇到数字位数较多的情况,可以将这个区间的结束值设置得更大一些,以满足提取需求。
“LEFT (A2,...)”:该函数会从 A2 单元格中依次提取出第 1 至第 N 个字符,这里的 N 就是前面 “ROW ($1:$20)” 生成数组中的各个值。例如,提取出来的结果依次为 “2”“27”“278”“2785”“2785 马”…… 直到将 A2 单元格的内容全部提取出来。
“--”:这是一个将纯数字转换为数值格式的操作。经过这一步处理,提取出来的数字就可以进行数值相关的运算和操作了。
“LOOKUP (9^9,...)”:“9^9” 表示一个非常大的数值。LOOKUP 函数认为第二个参数中的数值是按升序排序的,它会在这个区域中查找 “9^9”,一直查找到最后一个值。如果找不到 “9^9”,就会返回最后一个数值。通过这样的机制,就成功地将单元格中文字前面的所有数字都提取出来了。
2、提取中文公式及操作:
在 C2 单元格中输入公式 “=SUBSTITUTE (A2,B2,"")” ,同样将鼠标指针移至 C2 单元格右下角,下拉复制公式。
公式释义:这个公式的作用是将 A2 单元格中的数字(即 B2 单元格中的内容)替换成空值,这样就实现了将中文提取出来的效果。
方法2:借助Power Query实现提取
1、启动 Power Query:选择数据表的任意一个单元格,然后点击工具栏的 “数据” 选项,接着选择 “从表格”。
2、设置对话框:在弹出的对话框中,保留默认设置,直接点击 “确定” 按钮。此时,表格数据就已上传至 Power Query 中。
3、拆分列操作:在 Power Query 的工具栏中,选择 “主页” 选项,点击 “拆分列”,再选择 “按照从数字到非数字的转换”。通过这一步操作,Power Query 会自动识别并将数字和非数字部分拆分开来。
4、关闭并上载数据:继续在工具栏中选择 “主页”,点击 “关闭并上载”,然后选择 “关闭并上载至”。
5、选择上载位置:在弹出的对话框中,选择 “表”,然后选择 “现有工作表”,并指定所需上传至的位置,最后点击 “加载” 按钮。
完成这些操作后,右侧就会出现绿色的表格,这就是拆分出来的两列,分别是提取出的数字列和中文列。效果如下图:
通过以上两种方法,我们就可以轻松地从单元格中提取出文字前面的数字,并且将数字和中文分别放置在不同列中。在实际工作中,大家可以根据具体情况选择更适合自己的方法来处理数据,提高工作效率。赶紧动手试试吧!
评论 (0)