如何将数据(没有隐藏单元格)粘贴到具有隐藏列的工作表中

如何将数据(没有隐藏单元格)粘贴到具有隐藏列的工作表中

是否可以防止数据在一次复制/粘贴动作中被粘贴到隐藏列中,而不必多次复制/粘贴?

答案1

我想建议一种通过跳过隐藏列来粘贴数据的比较最佳和最快的方法。

复制粘贴之前:

在此处输入图片描述

粘贴后:

在此处输入图片描述

注意: 正如您所发现的,宏跳过了hidden Column H从范围粘贴数据A1:C9

怎么运行的:

  • 隐藏列/列,此帖子Col H被隐藏。

  • 任何一个右键点击工作表标签& 从弹出菜单中点击查看代码或按Alt+F11,获取 VB 编辑器。

  • 复制&粘贴此 VBA 代码(宏)为标准模块然后跑步测试复制粘贴

    Sub TestCopyPaste()
    
    CopySkippingHidden ActiveSheet.Range("A1:C9"), _
      ActiveSheet.Range("G1")
    
      End Sub
    

Sub CopySkippingHidden(rngToCopy As Range, pasteStart As Range)

    Dim c As Range


    For Each c In rngToCopy.Columns

        Do While pasteStart.EntireColumn.Hidden
            Set pasteStart = pasteStart.Offset(0, 1)
        Loop
        c.Copy pasteStart

        Set pasteStart = pasteStart.Offset(0, 1)

    Next c

End Sub
  • ActiveSheet.Range("A1:C9")&ActiveSheet.Range("G1")可编辑。
  • 哪里A1:C9是要复制的源,哪里G1是要粘贴复制数据的目标。
  • 您也可以调整单元格引用/数据范围。

相关内容