• ベストアンサー

EXCEL  VBA シートコピー、名前変更他

EXCEL  VBA (1)シートコピー、名前変更 (2)他の固定のbookへ転送をVBAで記述 book1のsheet1を開き、そのsheetをコピーしたものをABCというsheet名に替え、 それをbook2のsheetの後ろへ移動するというマクロをPersonalに作ろうとしていますが、 インデックスエラーとか【アプリケーション定義または、オブジェクト定義のエラー】とかインデックスエラーとか になります。 book1のsheet1とかは、マクロを使う場合は、固定的な名前でなくいろいろそのときどきでかわる名前ですが、 マクロを使って、そのsheetをコピーしたものをABCとしてbook2のsheetの後ろへ移動したいということです。 よろしくお願いします。

質問者が選んだベストアンサー

  • ベストアンサー
  • pkh4989
  • ベストアンサー率62% (162/260)
回答No.2

こんにちは。 Book1のコピー元のシート名が固定ではないので、そのシートがActiveになるとして Book1とBook2が開いている状態なら以下のようになります。 Sub シート移動()   Dim wbk1  As Workbook   Dim wbk2  As Workbook   Set wbk1 = Workbooks("Book1.xls")   Set wbk2 = Workbooks("Book2.xls")      wbk1.ActiveSheet.Copy After:=wbk2.Sheets(wbk2.Sheets.Count)   wbk2.ActiveSheet.Name = "ABC" End Sub

taktta
質問者

お礼

うまくいきました。 ご回答どうもありがとうございました。

その他の回答 (1)

  • fly_moon
  • ベストアンサー率20% (213/1046)
回答No.1

エラーが出ているコードを載せないと回答できないと思いますが。

taktta
質問者

お礼

はい、そのとおりです。でもうえの人のやり方で解決しました。 ご回答どうもありがとうございました。