您的位置 首页 > 数码极客

如何把一行表格另存为一个文件

在《为什么你加班?因为你使用Excel不规范!就算不规范我也不加班!》中我提到一种只有一列的奇葩表格。在那个帖子里对我最开始怎么用Excel处理,一笔带过。

在这个帖子里,我想简单复盘下我是如何整理这个表格的。借助Excel的强大功能,同样的问题往往有多种解决办法。有些办法高大上,但是需要对Excel非常熟练,有的方法操作稍微繁冗一些,但效率也还能接受,比如我在这个帖子里的这种处理方式。算是抛砖引玉,如果大家有其他方法,欢迎分享。

下面这张图就是奇葩表格的一部分。电话号码已经经过变形处理,不是真实的号码,所以不用担心隐私泄露。

首先分列,把数字剔除

如果是在word中,可以直接用特殊字符里边的“数字”替换就把数字干掉了,Excel没有特殊字符替换神器(也许用vba可以开发?求教大神),所以用分列的方式可以最快地把数字剔除。分列方法如下图所示,我省略了分列最开始的页面,请注意。

用条件公式再把数字组合到一列

上一步分列的结果如下图的A列和B列所示。现在我们要再把数据组合起来,用的公式就是判断A列中是否是文本。如果是文本,返回A列的内容;如果不是文本,返回B列的内容。最后结果如C列所示。

再次利用条件公式,将电话号码提取到单独的列,并和姓名一一对应

当然,如果偷懒的话,可以把上一步和这一步同时做了。为了减少出错可能,我还是把两步单独分开了。

在这一步,我们用if条件来判断C列最左边的两个字符是不是“姓名”,如果是,就把它下面那行提取到D列;如果不是,则返回空值。其实可以返回别的固定值也可以,甚至你可以直接返回电话所在的那一行,都可以。看个人喜好。

筛选剔除不要的值,最后得到一一对应的数据

我通过筛选,把空值剔除,剩下的就是一一对应好的电话号码了。

复制粘贴到新的sheet或新的Excel文件中,任务完成。如下图所示。接下来可以把“姓名:”和“电话:”替换掉,再新增一行作为表头,分别标记为“姓名”和“电话”即可。

拓展

这个例子只有两列,很简单;如果需要提取出三列乃至N列来呢?操作思路都是类似的,只要能找到统一的规律就行。只不过要提取的列数越多,操作越繁杂而已。有兴趣的可以试试看。

结语

例子简单,需求也很简单,但是如果我们一开始就以规范的操作进行,就能避免后期很多多余的工作量。如果实在无法避免,需要经常整理这样的奇葩数据,纯Excel操作起来还是啰嗦了点,最佳解法依然是PowerQuery。无论整理过程有多复杂,都只是第一次做数据模型时会比较耗费时间,之后的数据更新都是直接刷新。

各位如果有其他处理类似问题的好方法,也欢迎分享。

再次感谢阅读此小文。

责任编辑: 鲁达

1.内容基于多重复合算法人工智能语言模型创作,旨在以深度学习研究为目的传播信息知识,内容观点与本网站无关,反馈举报请
2.仅供读者参考,本网站未对该内容进行证实,对其原创性、真实性、完整性、及时性不作任何保证;
3.本站属于非营利性站点无毒无广告,请读者放心使用!

“如何把一行表格另存为一个文件”边界阅读