シートコピーのマクロを実行した後で、コピー先のファイルを削除する方法を教えてください。
マクロ
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で質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
- ・漫画をレンタルでお得に読める!
- ・【大喜利】【投稿~11/12】 急に朝起こしてきた母親に言われた一言とは?
- ・好きな和訳タイトルを教えてください
- ・うちのカレーにはこれが入ってる!って食材ありますか?
- ・好きな「お肉」は?
- ・あなたは何にトキメキますか?
- ・おすすめのモーニング・朝食メニューを教えて!
- ・「覚え間違い」を教えてください!
- ・とっておきの手土産を教えて
- ・「平成」を感じるもの
- ・秘密基地、どこに作った?
- ・【お題】NEW演歌
- ・カンパ〜イ!←最初の1杯目、なに頼む?
- ・一回も披露したことのない豆知識
- ・これ何て呼びますか
- ・チョコミントアイス
- ・初めて自分の家と他人の家が違う、と意識した時
- ・「これはヤバかったな」という遅刻エピソード
- ・これ何て呼びますか Part2
- ・許せない心理テスト
- ・この人頭いいなと思ったエピソード
- ・牛、豚、鶏、どれか一つ食べられなくなるとしたら?
- ・あなたの習慣について教えてください!!
- ・ハマっている「お菓子」を教えて!
- ・高校三年生の合唱祭で何を歌いましたか?
- ・【大喜利】【投稿~11/1】 存在しそうで存在しないモノマネ芸人の名前を教えてください
- ・好きなおでんの具材ドラフト会議しましょう
- ・餃子を食べるとき、何をつけますか?
- ・あなたの「必」の書き順を教えてください
- ・ギリギリ行けるお一人様のライン
- ・10代と話して驚いたこと
- ・家の中でのこだわりスペースはどこですか?
- ・つい集めてしまうものはなんですか?
- ・自分のセンスや笑いの好みに影響を受けた作品を教えて
- ・【お題】引っかけ問題(締め切り10月27日(日)23時)
- ・大人になっても苦手な食べ物、ありますか?
- ・14歳の自分に衝撃の事実を告げてください
- ・架空の映画のネタバレレビュー
- ・「お昼の放送」の思い出
- ・昨日見た夢を教えて下さい
- ・ちょっと先の未来クイズ第4問
- ・【大喜利】【投稿~10/21(月)】買ったばかりの自転車を分解してひと言
- ・メモのコツを教えてください!
- ・CDの保有枚数を教えてください
- ・ホテルを選ぶとき、これだけは譲れない条件TOP3は?
- ・家・車以外で、人生で一番奮発した買い物
- ・人生最悪の忘れ物
- ・【コナン30周年】嘘でしょ!?と思った○○周年を教えて【ハルヒ20周年】
- ・あなたの習慣について教えてください!!
- ・都道府県穴埋めゲーム
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
VBA シートをコピーする際に Co...
-
別ブックをダイアログボックス...
-
エクセルVBAが途中で止まります
-
VBA コードを実行すると画面が...
-
【ExcelVBA】インデックスが有...
-
ワイルドカード「*」を使うとう...
-
フォルダ内の全てのファイルに...
-
VBA 別ブックからコピペしたい...
-
[Excel]ADODBでNull変換されて...
-
【ExcelVBA】zip圧縮されたCSV...
-
VBで既存エクセルシートを新規...
-
Excelマクロ 該当する値の行番...
-
VBAで別ブックのシートを指定し...
-
VBAで別のブックにシートをコピ...
-
Access開いているブックのセル...
-
2つ目のコンボボックスが動作...
-
Excel2007VBAファイルの表示に...
-
VBAで複数のブックを開かずに処...
-
Excel にて、 リストボックスの...
-
【VBA】全シートの計算式を全て...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
VBA シートをコピーする際に Co...
-
別ブックをダイアログボックス...
-
エクセルVBAが途中で止まります
-
ワイルドカード「*」を使うとう...
-
VBA 別ブックからコピペしたい...
-
【ExcelVBA】インデックスが有...
-
VBA コードを実行すると画面が...
-
VBAで別ブックのシートを指定し...
-
【ExcelVBA】zip圧縮されたCSV...
-
VBAで別のブックにシートをコピ...
-
VBA 実行時エラー 2147024893
-
VBA シート名が一致した場合の...
-
ユーザーフォームの切り替えに...
-
【マクロ】違うフォルダにある...
-
【Excel VBA】書き込み先ブック...
-
VBS Bookを閉じるコード
-
Excelマクロ 該当する値の行番...
-
VBAで複数のブックを開かずに処...
-
VBA アプリケーション定義また...
-
Excel2007VBAファイルの表示に...
おすすめ情報
回答ありがとうございました。
大変失礼いたしました。
コピー元です。
ご指示の通りに
' コピー元のブックを閉じる
srcWorkbook.Close SaveChanges:=False
' コピー元のブックを削除
Kill srcFolderPath & srcFileName
End Sub
を設定しましたが
コピー元のフォルダ内のファイル「 "*.xlsx"」
が削除されておりません。
解決方法をお願いいたします。
よろしくお願いします。
質問のマクロに追加が難しい場合は
指定フォルダ内「"\\nas-sp01\share\確認部\■意匠\戸建\戸建て電子申請関連\ひな形\フラット関係\他の帳票(設計検査調書)\"」
の「 "*.xlsx"」を削除できる新しいマクロでも構いません。
仮にマクロ名は
「ファイル削除」としてください。
よろしくお願いします。
何度も申し訳ありません。
はい、エラーメッセージも出ませんでした。
新しいマクロ
Sub Macro1()
Kill "*.xlsx"
End Sub
を作成して実行しましたが、ファイル削除は出来ませんでした。
尚、ファイルを右クリックで削除は出来ます。
解決方法をよろしくお願いします。