Excel-对筛选出来的数据进行复制粘贴

问题

在Excel中,如果你处于数据筛选的状态的话,普通的【复制-粘贴】会得不到理想的效果。

举个例子,有一个订单发货表的excel,里面有不同订单对应的发货单号,有发圆通的、也有发顺丰、德邦的。假设我现在通过圆通的接口查到了发圆通的订单物流运输的天数,要把这个运输天数加到这个表里面去。

订单发货表如下:

通过圆通接口查询到的货物运输的天数数据也存到了一个excel里,数据是按订单id排好序的:

如果我在订单发货表中先筛选出发圆通的订单,然后【复制-粘贴】。

去掉筛选后会得到什么样的结果呢?

可以粘贴出来的内容确实是刚刚筛选出来的数据,只是【筛选状态】下粘贴却没有自动跳过【隐藏行】!

解决办法

对于上面这种只想粘贴在筛选出来的行,跳过隐藏行的问题,需要借助两个辅助列。

第一步
第一个辅助列保存一组序列,具体操作是在第一行数据输入1(除去表头开始算起),然后选择辅助列1里要填充序列的所有行,在excel的填充操作中选中序列,点确定。

这样就填充了辅助列1的数据。

第二步
筛选出圆通的发货订单后,第二个辅助列保存row()函数的数据,在辅助列2第一行数据单元格输入row(),然后回车。复制这个单元格,再把辅助列2剩余的几行选中,按Ctrl+C粘贴。

第三步
下一步就是开始排序+复制粘贴了,但是有个有个点需要注意,就是上面的excel中有一列空的D列,在用辅助列排序前要将这一列删除掉

对辅助列2进行升序排序(由于公式的原因,此时辅助列2的数据会变,没关系,顺序还是按照原先的数字从小到大排列的),

接下来把运输天数的数据粘贴过来,

最后取消辅助列2的排序,用辅助列1进行升序排序,就可以看到数据正确地粘贴过来了,后续就是在把两个辅助列删除调就行了。

------ 本文完 ------