4 复制Sheet2表格的B1:B7数据 粘贴到Sheet1表格的B2:B8区域
有时过滤后,需要将其他区域的连续行数据复制粘贴到过滤区域,替换过滤后的数据。因为筛选区域包含隐藏行,所以不能直接复制粘贴,否则一些数据会被粘贴到隐藏行中。但如果复制后通过“定位可见单元格”选择所选筛选区域的可见单元格,然后按“Ctrl V”粘贴,Excel会提示”.Excel无法粘贴信息,因为复制区域和粘贴区域的形状不同."。在这种情况下,可以用辅助列或VBA的方法来解决它。
例如,如下图所示,左边Sheet1表格的A和B列包含一些水果名称和数量。现在,需要将Sheet1表格过滤的“苹果”数量替换为右侧Sheet2表格B1:B7区域的数值(用红色标记)。
方法1:使用辅助列。
这种方法是把需要替换的数据用排序的方法放在一起,然后复制粘贴。也就是说,先添加一个“否”的辅助列,在其中输入数字序号,然后用另一个辅助列标记过滤后的数据,按第二个辅助列排序,然后复制粘贴,最后对“否”的列进行排序,恢复原始数据的顺序。具体步骤如下:
1.首先取消筛选,在“Sheet1”表格的C2和C3单元格中输入数字“1”和“2”,选择这两个单元格,双击填充手柄将序列号填充到C列中。
2.过滤a列的“苹果”,在D列第二行的单元格中输入公式:
=ROW()
然后将公式向下填充到D列中所有可见的单元格.
3.取消筛选,按D列排序,将所有“苹果”一起排名。
4.从“Sheet2”表中复制B1:B7数据,并将其粘贴到“Sheet1”表的B2:B8区域。
5.按序号列排序,恢复原始数据的顺序。
最后,删除C列和D列,完成替换。
方法2: VBA代码
下面的VBA代码可以直接将“Sheet2”表中B列的数据粘贴到“Sheet1”表的过滤区域。如果“Sheet1”表的数据区为A1:B20,需要复制粘贴的“Sheet2”表的B列数为7,先对“Sheet1”表的A列过滤“Apple”,然后按Alt F11打开VBA编辑器,在代码生成窗口输入以下代码运行。
跳过隐藏线()dimrng作为范围设置RNG=范围(' b23360b20 ')。RNG工作表(“sheet2”)中每个单元格的特殊单元格(xlcelltypevisible)。单元格(i1,2)。cutcopy mode=Fassi=I 1如果i=7,则EndNextEnd Sub
版权声明:4 复制Sheet2表格的B1:B7数据 粘贴到Sheet1表格的B2:B8区域是由宝哥软件园云端程序自动收集整理而来。如果本文侵犯了你的权益,请联系本站底部QQ或者邮箱删除。