0

次のようなマクロを作成するにはどうすればよいですか。

  1. 範囲A2:AT10000を1つのワークブックから新しいワークブックの最初のシートにコピーします。
  2. 最初のワークブックに戻り、コードネームがSheet11のシートで範囲A6:HF10000を選択します。
  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
4

1 に答える 1

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
于 2013-02-01T12:22:19.907 に答える