【问题标题】:How to copy paste all formats AND values without using select in vba如何在不使用 vba 选择的情况下复制粘贴所有格式和值
【发布时间】:2015-07-21 10:39:31
【问题描述】:

如何在不使用 select 的情况下复制范围。我需要一切,而不仅仅是价值观。 当前庞大的代码:

Function Template(x As Integer)
    Sheets("Sheet1").Select
    Sheets("Sheet1").Range("E1:H5").Select
    Selection.Copy
    Sheets("Sheet2").Select
    Sheets("Sheet2").Cells(1, x).Select
    ActiveSheet.Paste
End Function

谢谢!!

【问题讨论】:

  • 这些答案解决了您的问题吗?
  • 是的,非常感谢大家!非常感谢:-)
  • 太棒了!那么你应该接受其中一个答案! :0)

标签: vba select copy format paste


【解决方案1】:

您可以使用Range.Copy (https://msdn.microsoft.com/en-us/library/office/ff837760.aspx) 来复制范围而不发生选择,例如...

Range("A1").Copy Range("A2")

将复制所有内容,包括从A1A2 的值和格式。

【讨论】:

    【解决方案2】:
    Function Template(x As Integer)
        Dim sourceRange As Excel.Range
        Dim destinationRange As Excel.Range
    
        Set sourceRange = Sheets("Sheet1").Range("E1:H5")
        Call sourceRange.Copy
    
    
        Set destinationRange = Sheets("Sheet2").Cells(1, x)
        Call destinationRange.PasteSpecial(xlPasteAll)
    
    End Function
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多