0

私はVBAでマクロを書いています。このマクロは、順序を変更するまで正常に機能していましたが、現在は「ランタイムエラー9」が表示されています。インターネットで徹底的に検索した後、私は行き詰まりました。シート名が同じであり、シートがまだ存在していることを確認し、正しいワークブックを参照していることを確認しました。このエラーが表示される理由を誰かに教えてもらえますか?

Sub CopyStuff()

Sheets("DR1 -TC-001").Select
Range("C2:P23").Select
 'this is the cell range
 Selection.Copy

 With ActiveWorkbook Sheets.Add
 Range("C2:P23").Select
 Selection.Paste = wkb2

End Sub
4

1 に答える 1

1

End Withが欠落していて、いくつかのピリオドがあるため、コードはWithステートメントでエラーになります。

このコードの適応を試してください。

Sub CopyStuff()

 Workbooks("With_data.xlsx").Activate
  'Activate the workbook that contains the data you want to copy    
 Sheets("DR1 -TC-001").Range("C2:P23").Copy
  'Copy a range

 ActiveWindow.ActivatePrevious
  'Revert to the previous new workbook

 With ActiveWorkbook
    .Sheets.Add
    .ActiveSheet.Range("C2:P23").PasteSpecial Paste:=xlPasteAll
 End With
  'Add a sheet and paste the copied range

 Application.CutCopyMode = False
  'Clear the clipboard

End Sub
于 2012-09-04T09:17:39.557 に答える