问题
在Excel中,如果你处于数据筛选的状态的话,普通的【复制-粘贴】会得不到理想的效果。
举个例子,有一个订单发货表的excel,里面有不同订单对应的发货单号,有发圆通的、也有发顺丰、德邦的。假设我现在通过圆通的接口查到了发圆通的订单物流运输的天数,要把这个运输天数加到这个表里面去。
订单发货表如下:
通过圆通接口查询到的货物运输的天数数据也存到了一个excel里,数据是按订单id排好序的:
如果我在订单发货表中先筛选出发圆通的订单,然后【复制-粘贴】。
去掉筛选后会得到什么样的结果呢?
可以粘贴出来的内容确实是刚刚筛选出来的数据,只是【筛选状态】下粘贴却没有自动跳过【隐藏行】!
解决办法
对于上面这种只想粘贴在筛选出来的行,跳过隐藏行的问题,需要借助两个辅助列。
第一步
第一个辅助列保存一组序列,具体操作是在第一行数据输入1(除去表头开始算起),然后选择辅助列1里要填充序列的所有行,在excel的填充操作中选中序列,点确定。
这样就填充了辅助列1的数据。
第二步
筛选出圆通的发货订单后,第二个辅助列保存row()函数的数据,在辅助列2第一行数据单元格输入row(),然后回车。复制这个单元格,再把辅助列2剩余的几行选中,按Ctrl+C粘贴。
第三步
下一步就是开始排序+复制粘贴了,但是有个有个点需要注意,就是上面的excel中有一列空的D列,在用辅助列排序前要将这一列删除掉。
对辅助列2进行升序排序(由于公式的原因,此时辅助列2的数据会变,没关系,顺序还是按照原先的数字从小到大排列的),
接下来把运输天数的数据粘贴过来,
最后取消辅助列2的排序,用辅助列1进行升序排序,就可以看到数据正确地粘贴过来了,后续就是在把两个辅助列删除调就行了。