VBAでファイルを削除する 質問する

VBAでファイルを削除する 質問する

VBA を使用して、次の操作を実行できます。

  1. ファイルが存在するかどうかをテストし、存在する場合は、
  2. 消して?

ベストアンサー1

1.) チェックここ基本的には次のようにします:

Function FileExists(ByVal FileToTest As String) As Boolean
   FileExists = (Dir(FileToTest) <> "")
End Function

必要なさまざまなエラー処理の検討は皆さんにお任せしますが、私が検討するエラー処理には次のようなものがあります。

  • 渡される空の文字列を確認します。
  • ファイル名/パスに不正な文字を含む文字列をチェックします

2.) ファイルを削除する方法。これ。基本的には Kill コマンドを使用しますが、ファイルが読み取り専用になる可能性を考慮する必要があります。次の関数を使用します:

Sub DeleteFile(ByVal FileToDelete As String)
   If FileExists(FileToDelete) Then 'See above          
      ' First remove readonly attribute, if set
      SetAttr FileToDelete, vbNormal          
      ' Then delete the file
      Kill FileToDelete
   End If
End Sub

繰り返しになりますが、エラー処理はあなたにお任せしますが、私が考慮する点は次のとおりです。

  • これはディレクトリとファイルでは異なる動作をすべきでしょうか? ユーザーはディレクトリを削除することを明示的に示す必要があるでしょうか?

  • コードで読み取り専用属性を自動的にリセットしますか、それとも読み取り専用属性が設定されていることをユーザーに何らかの形で通知しますか?


編集: この回答をコミュニティ ウィキとしてマークして、必要に応じて誰でも変更できるようにします。

おすすめ記事