
シートコピーのマクロを実行した後で、コピー先のファイルを削除する方法を教えてください。
マクロ
Sub シートコピー一般()
Dim srcFolderPath As String
Dim srcFileName As String
Dim srcSheetName As String
Dim destWorkbook As Workbook
Dim destSheet As Worksheet
Dim srcWorkbook As Workbook
Dim srcSheet As Worksheet
' コピー元のフォルダパスとファイル名を指定
srcFolderPath = "\\nas-sp01\share\確認部\■意匠\戸建\戸建て電子申請関連\ひな形\フラット関係\他の帳票(設計検査調書)\"
srcFileName = "*.xlsx"
' コピー先の作業ブックとシートを指定
Set destWorkbook = ThisWorkbook
Set destSheet = destWorkbook.Sheets("マクロシート")
' コピー元のファイルを検索
srcFileName = Dir(srcFolderPath & srcFileName)
' コピー元のブックを開く
Set srcWorkbook = Workbooks.Open(srcFolderPath & srcFileName)
' コピー元のシートを取得(一番左のシート)
Set srcSheet = srcWorkbook.Sheets(1)
' コピー元のシート名を取得
srcSheetName = srcSheet.Name
' コピー元のシートをコピー先にコピー
srcSheet.Copy After:=destSheet
' コピー元のブックを閉じる
srcWorkbook.Close SaveChanges:=False
End Sub
このマクロを実行すると指定フォルダ内の指定ファイル「 "*.xlsx"」のシートが作業ブックのシートにコピーされます。
このマクロに追加して
作業ブックにシートがコピーされた後に、
指定フォルダ内の指定ファイル 「"*.xlsx"」を削除する方法を教えてください。
指定フォルダ内には最新のファイルのみを保存して、作業をしている為、
作業ブックにシートがコピーされれば、コピー先のファイルは不要となりますので、
詳しい方、よろしくお願いします。
No.4ベストアンサー
- 回答日時:
あれ?同じような質問を見たけれど・・・
srcSheet.Copy After:=destSheet
' コピー元のブックを閉じる
With srcWorkbook
.Save
.ChangeFileAccess Mode:=xlReadOnly
Kill .FullName
.Close (False)
End With
End Sub
回答ありがとうございました。
いつも助けて頂きましてありがとうございます。
全て上手く行きました。
感謝いたします。
中々解決できなかったので
質問を変更して質問したのですが
解決しましたので他の質問を削除させていただきます。
No.3
- 回答日時:
エラーメッセージも出ないのですね。
私では難しそうなので、他の識者の方に回答いただけるといいのですが。
(この質問は閉めて新たに質問した方がいいかもしれません。)
No.2
- 回答日時:
エラーメッセージも出ないのでしょうか?
テスト用ファイルを作って
Kill ”ファイル名(フルパス)”
だけでテストしてみてはいかがでしょう。
削除権限がないってことはないですよね。
No.1
- 回答日時:
コピー先じゃなくてコピー元ですよね。
Kill srcFolderPath & srcFileName
で削除されますが、ゴミ箱にも入らず綺麗に消えますのご注意下さいね。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) エクセルのマクロについて教えてください。 1 2023/01/26 09:50
- Excel(エクセル) エクセルのマクロについて教えてください。 3 2023/02/07 14:47
- Visual Basic(VBA) 【ご教示ください】VBAの記述方法がわかりません。 2 2022/08/12 21:28
- Visual Basic(VBA) Excelのマクロについて教えてください。 1 2023/03/12 12:16
- Visual Basic(VBA) エクセルのマクロについて教えてください。 1 2023/08/03 11:27
- Visual Basic(VBA) エクセルのマクロについて教えてください。 1 2023/08/03 12:30
- その他(Microsoft Office) マクロVBAについて 1 2022/09/06 18:12
- Visual Basic(VBA) 【前回の続きです、ご教示ください】VBAの記述方法がわかりません。 2 2022/08/16 16:44
- Visual Basic(VBA) 別ブックからシートのコピー 3 2022/04/01 20:07
- Visual Basic(VBA) 特定の文字を含むシートだけマクロ処理をしたい 1 2023/05/22 01:43
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
VBA シートをコピーする際に Co...
-
別ブックをダイアログボックス...
-
エクセルVBAが途中で止まります
-
VBA 別ブックからコピペしたい...
-
ワイルドカード「*」を使うとう...
-
VBAで別ブックのシートを指定し...
-
VBA 実行時エラー 2147024893
-
VBA コードを実行すると画面が...
-
VBAで別のブックにシートをコピ...
-
【Excel VBA】書き込み先ブック...
-
vbaでvbaProjectのパスワード解...
-
【ExcelVBA】zip圧縮されたCSV...
-
Excelマクロ 該当する値の行番...
-
【前回の続きです、ご教示くだ...
-
[Excel]ADODBでNull変換されて...
-
フォルダ内の全てのファイルに...
-
ACCESSVBA からExcelの他ブック...
-
【マクロ】アクティブセルにブ...
-
VBAで複数のブックを開かずに処...
-
Excelブックがアクティブになっ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
VBA シートをコピーする際に Co...
-
別ブックをダイアログボックス...
-
VBA 別ブックからコピペしたい...
-
エクセルVBAが途中で止まります
-
ワイルドカード「*」を使うとう...
-
VBA コードを実行すると画面が...
-
VBAで別のブックにシートをコピ...
-
VBAで別ブックのシートを指定し...
-
【Excel VBA】書き込み先ブック...
-
Excelマクロ 該当する値の行番...
-
【ExcelVBA】zip圧縮されたCSV...
-
[Excel]ADODBでNull変換されて...
-
【ExcelVBA】インデックスが有...
-
Excel2007VBAファイルの表示に...
-
VBAで複数のブックを開かずに処...
-
vbaで他のブックに転記したい。...
-
エクセルマクロで、他ブックか...
-
vbaでvbaProjectのパスワード解...
-
VBA 実行時エラー 2147024893
-
【マクロ】違うフォルダにある...
おすすめ情報
回答ありがとうございました。
大変失礼いたしました。
コピー元です。
ご指示の通りに
' コピー元のブックを閉じる
srcWorkbook.Close SaveChanges:=False
' コピー元のブックを削除
Kill srcFolderPath & srcFileName
End Sub
を設定しましたが
コピー元のフォルダ内のファイル「 "*.xlsx"」
が削除されておりません。
解決方法をお願いいたします。
よろしくお願いします。
質問のマクロに追加が難しい場合は
指定フォルダ内「"\\nas-sp01\share\確認部\■意匠\戸建\戸建て電子申請関連\ひな形\フラット関係\他の帳票(設計検査調書)\"」
の「 "*.xlsx"」を削除できる新しいマクロでも構いません。
仮にマクロ名は
「ファイル削除」としてください。
よろしくお願いします。
何度も申し訳ありません。
はい、エラーメッセージも出ませんでした。
新しいマクロ
Sub Macro1()
Kill "*.xlsx"
End Sub
を作成して実行しましたが、ファイル削除は出来ませんでした。
尚、ファイルを右クリックで削除は出来ます。
解決方法をよろしくお願いします。