【VBA:Tips】ファイルを削除する

ファイルを削除する

VBAでファイルを削除する方法は、FileSystemObjectdeleteFileメソッド使用することで実現できます。

 

FileSystemObjectは、ファイルシステムオブジェクトを操作するための標準ライブラリであり、ファイルやフォルダの作成や削除、コピー、移動などを簡単に行うことができます。

 

deleteFileメソッドは、指定したファイルを削除します。

 

ここでは、FileSystemObjectdeleteFileを使ってVBAでファイルを削除する方法について説明します。

 

【サンプルソース】指定したファイルを削除する

以下は、FileSystemObjectのdeleteFileを使用してVBAでファイルを削除するサンプルソースです。

上記のサンプルソースでは、削除したいファイルパスを指定しています。

次に、FileSystemObjectを生成しています。

deleteFileメソッドを利用して、指定したファイルを削除しています。
第1引数はファイルパス、第2引数は読み取り専用ファイルを削除するかどうかを指定します。

サンプルソースでは、読み取り専用ファイルも削除したいので、Trueを指定しています。
Falseを指定した場合、読み取り専用ファイル削除時にエラーが発生します。

ファイル削除時に指定したファイルが存在しない場合、エラーが発生します。

注意点としては、削除したいファイルが存在するか、読み取り専用ファイルか注意して実行してください。

 

【サンプルソース】指定した条件に該当するファイルを削除する(ファイル名)

以下は、FileSystemObjectを使用して、指定したフォルダに存在するAから始まるファイルを全て削除するサンプルソースです。

上記のサンプルソースでは、以下の流れで処理しています。

  1. FileSystemObjectを作成する
  2. フォルダパスを指定する
  3. フォルダ内のファイルを取得する
  4. ファイル名が”A”から始まる場合、削除する

 

注意点は、指定したフォルダが存在しない場合、エラーになります。
また、読み取り専用ファイルを削除しようとすると、エラーになります。

 

【サンプルソース】指定した条件に該当するファイルを削除する(拡張子)

以下は、FileSystemObjectを使用して、指定したフォルダに存在する拡張子が「xlsx」のファイルを全て削除するサンプルソースです。

上記のサンプルソースでは、以下の流れで処理しています。

  1. FileSystemObjectを作成する
  2. フォルダパスを指定する
  3. フォルダ内のファイルを取得する
  4. 拡張子が「xlsx」のファイルを削除する

 

注意点は、指定したフォルダが存在しない場合、エラーになります。
また、読み取り専用ファイルを削除しようとすると、エラーになります。

fso.GetExtensionNameメソッドでファイルの拡張子を取得しています。
取得した拡張子を「LCase」ですべて小文字にしています。

例えば、「XLSX」を取得した場合、小文字化して「xlsx」に変換しています。

 

まとめ

VBAでファイルを削除する方法を紹介しました。

指定するファイルやフォルダを間違わないように注意しながら、利用してください。

 

以上です。

 

 

最後まで読んでいただきありがとうございました。
この記事をシェアしていただけると喜びます。

 

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です