• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:シートを他のブックに貼付けたい)

シートを他のブックに貼付けたい

このQ&Aのポイント
  • Excel2007でマクロ作成中の初心者です。本ブックの中の「当月売上」シートを他ブックに貼付けたいです。他ブックに貼り付けた「当月売上」シート名は、セルK1の日付に変更したいです。四苦八苦して以下のコードをつくりましたが、「同じ名前のシート名に変更できません。」というエラーがでるので、名前が同じ時は上書き保存し、違うときは新しいシート名を作るというコードにしたいです。
  • 売上シートを他のブックに貼り付けるためのマクロを作成しています。本ブックの「当月売上」シートを他ブックに貼り付け、貼り付けたシート名をセルK1の日付に変更したいです。ただし、同じ名前のシートが既に存在する場合は上書き保存し、異なる名前で保存したいです。現在、コードを作成中ですが、「同じ名前のシート名に変更できません。」というエラーが発生しています。どのようにすればエラーが発生せずに上書き保存または新しい名前で保存できるでしょうか。
  • Excel2007でマクロを作成しています。本ブックの「当月売上」シートを他のブックに貼り付け、貼り付けたシートの名前をセルK1の日付に変更したいです。ただし、同じ名前のシートが既に存在する場合は上書き保存し、異なる名前で保存したいです。以下のコードを作成しましたが、「同じ名前のシート名に変更できません。」というエラーが出力されます。解決策を教えてください。

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

  • ベストアンサー
  • watabe007
  • ベストアンサー率62% (476/760)
回答No.2

Workbooks("24年度売上.xls")の有無を確認して処理を分けているように シートも有無を確認して処理を分ければ On Error Resume Next   Set SH = Workbooks("24年度売上.xls").Worksheets(Format(Range("K1").Value, "売上(yyyy年mm月)")) On Error GoTo 0 If SH Is Nothing Then   'シートが無い場合の処理 Else   'シートが有る場合の処理 End If

すると、全ての回答が全文表示されます。

その他の回答 (1)

  • bin-chan
  • ベストアンサー率33% (1403/4213)
回答No.1

> 名前が同じ時は上書き保存し、違うときは新しいシート名を作るという 「名前が同じシートがあるか?を判定し、あれば削除する」を加えれば ほぼ今のままで行けませんか?

aitaine
質問者

お礼

ご回答ありがとうございます。ご指摘を参考にしてほぼ思い通りにできました。

aitaine
質問者

補足

「当月売上」シートは、まちがいが有った時修正します。同じ「当月売上」シートという名でも修正後の シートで貼り付けたいので、上書きは絶対条件なのですが・・。

すると、全ての回答が全文表示されます。

関連するQ&A