

No.4ベストアンサー
- 回答日時:
Workbooks.Open Filename:=ThisWorkbook.Path & "\" & toBook
を
Workbooks.Open Filename:="Aフォルダ内Bフォルダ\" & toBook
に変えてください。

No.3
- 回答日時:
以下のマクロを標準モジュールへ登録してください。
コピー先のブックは、”速報.xlsx”としました。(”速報book.xlsx”ではありません)
速報.xlsxのオープンはマクロ側で行いますが、マクロ側でクローズは行いません。(クローズの旨提示されていない為)
マクロのあるブックと速報.xlsxは同じフォルダ内にある前提です。
--------------------------------------------------------
Option Explicit
Public Sub ブック間シートコピー()
Dim fromsheet As String
Dim toBook As String
Dim toSheet As String
Dim ix As Long
toBook = "速報.xlsx"
fromsheet = "速報シート"
toSheet = ThisWorkbook.Worksheets(fromsheet).Range("A1").Value
If toSheet = "" Then
MsgBox ("A1のシート名不正")
Exit Sub
End If
Workbooks.Open Filename:=ThisWorkbook.Path & "\" & toBook
ix = CheckSheet(toBook, toSheet)
If ix > 0 Then
If MsgBox("重複する名前がありますが上書きしますか?", vbYesNo) <> vbYes Then
Exit Sub
End If
Application.DisplayAlerts = False 'シート削除時の警告を出さないようにする
Workbooks(toBook).Worksheets(ix).Delete '既に該当シートがあるなら削除する
Application.DisplayAlerts = True 'シート削除時の警告を出すようにする(元に戻す)
End If
'シートをコピーする(一番左へ)
ThisWorkbook.Worksheets(fromsheet).Copy before:=Workbooks(toBook).Worksheets(1)
Workbooks(toBook).Worksheets(1).Name = toSheet
MsgBox ("処理完了")
End Sub
'シート名チェック
Private Function CheckSheet(ByVal book, ByVal sheet As String) As Long
Dim ix As Long
For ix = 1 To Workbooks(book).Worksheets.Count
If LCase(Workbooks(book).Worksheets(ix).Name) = LCase(sheet) Then
CheckSheet = ix
Exit Function
End If
Next
CheckSheet = -1
End Function

No.2
- 回答日時:
補足要求です
①”Abook”と”速報book”の拡張子は何でしょうか。
②”Abook”と”速報book”は両方とも既にオープンされている前提でよいですか。
③このマクロは”Abook”に格納する前提でよいですか。
No.1
- 回答日時:
こんにちは
大雑把に二通りの考え方があるかと思います。
◇事前に既存のシート名をチェックする
For Each sht In Worksheets
If sht.Name = newName Then MsgBox "すでに存在する"
Next sht
みたいな感じ。
◇エラーが出たら処理する
すでに同じ名前が存在する状態で名前を設定しようとすると、VBAのエラーが発生しますので、
On Error ~~
でエラーの発生をチェックし、発生していたらエラー処理を行う
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) 特定の文字を含むシートだけマクロ処理をしたい 1 2023/05/22 01:43
- Visual Basic(VBA) vbaエクセルマクロ RemoveDuplicatesについて RemoveDuplicatesを使 3 2023/02/28 01:13
- Visual Basic(VBA) vbaエクセルマクロ RemoveDuplicatesについて RemoveDuplicatesを使 1 2023/02/27 22:21
- Visual Basic(VBA) VBAマクロでシートコピーした新シートにコピー元シートとの計算式の入れ方を教えて下さい。 5 2022/11/20 09:48
- Excel(エクセル) エクセルのマクロについて教えてください。 2 2023/02/26 13:19
- Excel(エクセル) エクセルのマクロについて教えてください。 3 2023/02/07 14:47
- Visual Basic(VBA) 条件に一致した場合の処理 2 2022/10/18 06:30
- Visual Basic(VBA) エクセルのマクロで対象ごとにシート分けしてその内容をセルに書き込みたい 9 2022/08/24 13:23
- Visual Basic(VBA) Excel VBA 大量のレコードからある列の重複数をカウントする方法?拡張編 7 2022/08/22 13:43
- Visual Basic(VBA) ExcelのVBAを使い、複数シートの同一箇所を、同一条件にて一括でソルバーを回す方法について 1 2022/04/23 11:49
このQ&Aを見た人はこんなQ&Aも見ています
-
VBAでシートコピー後、シート名が重複している時の処理
Access(アクセス)
-
エクセルのシート名変更で重複した時のvbaの処理
Visual Basic(VBA)
-
VBAで同じシート名のコピー時は処理中止したいのですが・・・
Visual Basic(VBA)
-
-
4
Excel VBA シート名変更時、重複していたら連番を付けたい
その他(Microsoft Office)
-
5
マクロ 新しいシートにデータをコピペしてシートの名前を変更したい
Excel(エクセル)
-
6
エクセルのエラーメッセージ「400」って?
Visual Basic(VBA)
-
7
InputBoxに入力した言葉をシート名にしたい!
Excel(エクセル)
-
8
VBAでエクセルシートを更新(リフレッシュ)する方法を教えて下さい。
Excel(エクセル)
-
9
メッセージボックスでシート名を変更するマクロ。
Word(ワード)
-
10
Excel VBAである特定文字列を含むシート名例えば「りんご(1)」
Excel(エクセル)
-
11
VBA シート名重複した場合削除する
Access(アクセス)
-
12
数式による空白を無視して最終行を取得するマクロ
Excel(エクセル)
-
13
エクセル マクロ名にブック名が付いた場合の修正方法
Excel(エクセル)
-
14
VBAで指定シート以外の選択
Visual Basic(VBA)
-
15
Excelシート名が重複してらシート名に連番を付加させる方法
Excel(エクセル)
-
16
エクセルの複数のセルを一括で絶対参照にする方法
Excel(エクセル)
-
17
EXCEL ページを指定してPDF出力するVBAを教えてください。
PDF
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
【ExcelVBA】sheet作成時にマク...
-
マクロ実行ボタンがコピー出来ない
-
Excelのシートを集約したいので...
-
VBAでシートコピー後、シート名...
-
Excelシートの統合するマ...
-
EXCELのオートフィルターマクロ...
-
エクセル 「実行時エラー"13":...
-
オペランドが足りませんとコメ...
-
不明なコマンドです("FROM")。...
-
変数名での条件分岐は可能でし...
-
ゾンビエクセル・・・(Exc...
-
mfc42.dllファイルってなんです...
-
Office2000でWeb関係が使用でき...
-
Excel2010でふりがなが漢字にな...
-
パソコンにコンポーザーをイン...
-
エクセルVBAで参照設定というフ...
-
unix の mv コマンド
-
GhostからWin XPがインストール...
-
オートメーションエラー
-
ザウルスのLinuxでSEDのスクリ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
【ExcelVBA】sheet作成時にマク...
-
VBA シートの切り替えができな...
-
エクセル/マクロ Exit Subが実...
-
マクロ実行ボタンがコピー出来ない
-
VBAでシートコピー後、シート名...
-
エクセル 「実行時エラー"13":...
-
エクセル 複数シートのフィル...
-
エクセルのシートを自動でコピー
-
エクセルのワークシートの並べ替え
-
Excelユーザーフォームでシート...
-
フェイス・シートについて教え...
-
VBA 教えてください
-
ワークシート上に配置したコマ...
-
不明なコマンドです("FROM")。...
-
Access2010 「演算子がありませ...
-
オペランドが足りませんとコメ...
-
エクセルの文字間スペースを入...
-
mfc42.dllファイルってなんです...
-
Excel2010でふりがなが漢字にな...
-
InstallShieldWizardのエラー
おすすめ情報
Abook及び、速報bookはエクセルです。
以下、自分で調べて組んでみたのですが、うまくいきません。
ちなみに、マクロは初心者です。
---------------------------------
Abook.xlsxにマクロを組んでいます
速報.xlsxを開く
Abook.xlsxの速報シートを速報.xlsxの先頭にコピー
(※A1セルの名前で保存)
同じシートの名前がある場合、メッセージボックスが出るようにしたい
(同じ名前のシートがあります。上書きしますか?)
yes 上書き
no 処理中断
よろしくお願いいたします
保存先のAbook.xlsxはAフォルダ内にあり、速報.xlsxはAフォルダ内のBフォルダ内にあるのですが、組むことはできますでしょうか?