【问题标题】:Macro to copy Range to a new Workbook将范围复制到新工作簿的宏
【发布时间】:2013-02-01 12:15:40
【问题描述】:

如何创建一个可以执行以下操作的宏:

  1. 将范围 A2:AT10000 从一个工作簿复制到新工作簿的第一个工作表。
  2. 回到初始工作簿,在工作表中选择范围 A6:HF10000,代号为:Sheet11
  3. 将所选内容粘贴到步骤 1 中创建的工作簿的新添加工作表(工作表 2)中

我得到一个运行时错误 424,在调试时,突出显示的行是 Sheet11.Range("A6:HF10000").Select

Sub Copy2RangesNewWorkbook()
'
' Copy2RangesNewWorkbook Macro
'
Dim pvt_wbk_New As Excel.Workbook
Dim pvt_xls_Current As Excel.Worksheet

With pvt_xls_Current
ActiveSheet.Range("A2:AT10000").Select
Selection.Copy
End With

Set pvt_wbk_New = Application.Workbooks.Add
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
    :=False, Transpose:=False

With pvt_xls_Current
Sheet11.Range("A6:HF10000").Select
Selection.Copy
End With

With pvt_wbk_New
Sheets.Add After:=Sheets(Sheets.Count)
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
    :=False, Transpose:=False
End With
End Sub

【问题讨论】:

标签: excel vba


【解决方案1】:

试试:

Sub Copy2RangesNewWorkbook()

Dim pvt_wb_New As Excel.Workbook
Dim pvt_ws_NewTarget1 As Worksheet
Dim pvt_ws_NewTarget2 As Worksheet
Dim pvt_ws_Current As Worksheet
Dim pvt_wb_Current As Workbook

Set pvt_ws_Current = ActiveSheet
Set pvt_wb_Current = ActiveWorkbook
Set pvt_wb_New = Application.Workbooks.Add
Set pvt_ws_NewTarget1 = pvt_wb_New.Sheets(1)
Set pvt_ws_NewTarget2 = pvt_wb_New.Worksheets.Add

pvt_ws_Current.Range("A2:AT10000").Copy
pvt_ws_NewTarget1.Range("A2").PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks:=False, Transpose:=False

pvt_wb_Current.Sheets("Sheet11").Range("A6:HF10000").Copy
pvt_ws_NewTarget2.Range("A6").PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks:=False, Transpose:=False

End Sub

【讨论】:

  • 最后一件事:如果我更改“Sheet 11”的名称,宏将不再起作用。我想使用工作表的代号,即 Sheet11。 pvt_wb_Current.Sheets("Sheet11").Range("A6:HF10000").Copy 我试图将此行更改为: pvt_wb_Current.Sheet11.Range("A6:HF10000").Copy 但它不成功。我可能必须定义它?如果您能告诉我,那就太好了,因为除了我以外的人肯定会更改工作表的名称。谢谢
猜你喜欢
  • 1970-01-01
  • 2022-01-22
  • 1970-01-01
  • 1970-01-01
  • 2012-09-02
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2019-07-29
相关资源
最近更新 更多