【雪中送炭】行业实例答疑:提取任务编号

清华学弟任泽岩
清华学弟任泽岩

创作者俱乐部成员

困难如山,我有金山。

欢迎收看本期【雪中送炭】新专题,我是学弟。

【雪中送炭】专题均为实际生产过程中的各行业的案例作为素材,进行实例答题,虽不一定能“药到病除”,但至少能“雪中送炭”,略尽学弟一点绵薄之力。

【作者简介】
社区ID:清华学弟任泽岩
WPS办公软件培训讲师
- 金山办公最有价值专家(KVP)、金山办公认证讲师(KCT)、金山WPS社区创作者俱乐部成员、金山文档金鹰社社员、表格菁培班-函高一期毕业生;
- 中国南方航空公司十佳教员、金牌微课制作师,全国培联/培协推优大赛金奖获得者,《培训》杂志“师道匠心”全国金牌内训师称号获得者,两度获得Toastmasters国际演讲会International Speech Contest项目冠军。

今天我们来帮助一位源数据表记录不规范的同事,提取一下任务编号:

【方法一】

我们学会了TEXTBEFORE、TEXTAFTER两个函数以后,很容易想到的一个思路是:

  1. 提取“任务编号:”后面的内容;

  1. 对①的结果,提取“,”之前的内容;

  1. 对②可能报错的情况,用IFERROR或者IFNA屏蔽一下。

因此不难写出:

【方法二】

正所谓:好想的方法不好算,好算的方法不好想。

方法二,我们把整个字符串进行“分列”操作——把“任务编号:”和“,”都当成【分隔符】(是的,分隔符可以不止一个字符),使用TEXTSPLIT函数的分隔符数组写法,进行分列。

例如:

💡

任务结束关闭订单并结算,任务编号:50375,订单编号:1239140

这一条信息中,把“任务编号:”和“,”都当成【分隔符】,就变成了:

💡

任务结束关闭订单并结算,任务编号:50375,订单编号:1239140

进而拆解成4列:

💡

任务结束关闭订单并结算      “”(空值)      50375      订单编号:1239140

忽略空白单元格后,各行均可统一成2列或者3列的行数组:

💡

任务结束关闭订单并结算 50375 订单编号:1239140

我们要提取的“50375”(任务编号),就雷打不动地在第2列,即可使用INDEX函数,或者CHOOSECOLS函数进行提取。

方法二的步骤整理如下:

  1. 把“任务编号:”和“,”都当成【分隔符】,并且忽略空白单元格,进行分列;

  1. 提取第2列;

  1. 下拉拖拽。

即为:

当然,这道题还有很多种解法,学弟也放在文档里面了,不过都没有方法一好想、没有方法二好做,仅供参考。

【规范又简易的方法】

学弟给到这位提问的用户一个建议,在平时录入时,分别按照“任务状态”、“任务编号”、“订单编号”3列分别录入,这样查找、提取也方便,这就是“一维表”的优势:

因此:源数据表的规范,直接影响到后期的数据处理时间成本

这也是菁培班邓华老师反复提醒我们注意的事情!养成良好的使用习惯和三表结构!


下面是本次教程的练习文档链接:

【金山文档】 行业实例答疑:提取任务编号

https://kdocs.cn/l/cuiiuEqv8VY2

如果你觉得今天的教程对你有帮助,欢迎在下方为我点一颗小红心💖💖💖哦!

同时,你也可以将感悟或者收获在下方留言,或者在评论区留下你的困惑,我会挑选有代表性的问题,推出更多的教程跟大家分享哦!

>>>欢迎收看【清华学弟任泽岩】WPS社区个人帖子合集<<<

https://home.wps.cn/topic/14780?chan=share&amp;fromshare=copylink

辽宁省
浏览 1178
收藏
14
分享
14 +1
7
+1
全部评论 7
 
亂雲飛渡
很好
· 广东省
回复
 
杨
您好同学,求助求助呀,麻烦请您看一下我发的帖子,就是表格批量替换内容的事,我搞不明白了呀,想找大神帮帮忙。就是规则无法保存,退出关闭电脑后,下次再打开表格,同样的规则还得一个一个重新输入,如果能保留记忆的话,可节省很多时间。
· 陕西省
1
回复
清华学弟任泽岩
清华学弟任泽岩

创作者俱乐部成员

您这个问题,是不是写成宏 效果好一点?这样每次你打开一个新文档,就运行宏就可以了?
· 辽宁省
1
回复
 
答案
很厉害哦~
· 浙江省
回复
 
志尧ZhiYao
志尧ZhiYao

创作者俱乐部成员

雪中送炭 任老师
· 江西省
1
回复
清华学弟任泽岩
清华学弟任泽岩

创作者俱乐部成员

班门弄斧 任老师
· 辽宁省
回复