复制并将单元格插入另一个工作簿

时间:2013-08-19 05:45:16

标签: excel vba

您好我已经尝试过录制宏和我从不同论坛获得的代码,但没有任何工作。我想要在一个打开的工作簿中复制一系列单元格,然后将其插入到我通过Excel.Application打开的excel文件中。这意味着下面的行将向下移动,不会被覆盖。发生了什么,只是插入了一个空白行而不是我复制的单元格。这是我目前的代码:

ThisWorkbook.Worksheets("Template").Range("A1:G22").Copy
WORxls.Worksheets("SheetSample").Rows("52:52").Select
WORxls.Application.ActiveWindow.Selection.Insert (xlDown)

1 个答案:

答案 0 :(得分:0)

请检查工作簿是否为只读和工作表是否受保护(Debug.Print行),然后在行Application.CutCopyMode = False上添加断点(红点)。检查Debug行的值,并且您能够手动编辑第52行中的数据。您是否在此Sub中有On Error Resume Next?将其注释掉,看看是否有错误显示。

ThisWorkbook.Worksheets("Template").Range("A1:G22").Copy
With WORxls.Worksheets("SheetSample")
    Debug.Print "Workbook ReadOnly? " & WORxls.ReadOnly
    Debug.Print "Sheet ProtectContents: " & .ProtectContents
    Debug.Print "Sheet AllowEditRanges: " & .Protection.AllowEditRanges
    Debug.Print "Sheet AllowInsertingRows: " & .Protection.AllowInsertingRows
    .Activate
    .Rows("52:52").Insert Shift:=xlDown
End With
Application.CutCopyMode = False