从一张纸复印范围并插入另一张纸

时间:2014-03-13 14:23:40

标签: excel-vba vba excel

我只需要从工作表“Header”中将A1复制到Q9,并将此范围插入到相同范围内的工作表“Master_Sheet”中。 我说插入是因为在调用上面的宏时,范围中有数据,我不必取消内容。 我尝试过这些我已经复制过的东西,但它会将数据复制到现有的一次,而我需要用格式化插入它们。显而易见,我不知道VBA。

Sub Main()
    Sheets("Master_Sheet").Range("A1:Q9").Value = Sheets("Header").Range("A1:Q9").Value
End Sub

非常感谢您的帮助。

1 个答案:

答案 0 :(得分:2)

您的代码仅复制值而非格式化。如果你想复制带格式的数据,请尝试下面的代码,它应该工作

     Sub Main()
        Dim lrow As Integer

        With Sheets("Header")
        lrow = Sheets("Master_Sheet").Range("A1").CurrentRegion.Rows.Count
        .Range("A1:Q9").Copy Sheets("Master_Sheet").Range("A" & lrow + 1) ' - for cut
        End With

    End Sub

或者如果你在单元格的乞讨处插入(A1 - 在主表格中)

使用以下代码

Sub Macro3()
    Sheets("Header").Range("A1:Q9").Copy
    Sheets("Master_Sheet").Select
    Range("A1").Select
    Selection.Insert Shift:=xlDown
    Application.CutCopyMode = False
End Sub

以上代码从标题表中复制A1:Q9中的数据并粘贴到主表A列的末尾