フォルダーの削除
RmDirステートメントを使う方法はお勧めしませんが、メモしておきます。
実行プログラム
1 2 3 4 5 |
Sub Sample7_7_1() RmDir "C:\excelmemo\Sample7_7\" End Sub |
RmDirステートメントは、削除対象フォルダーにサブフォルダーやファイルがある場合は実行できません。
エラーが発生します。
先にサブフォルダーやファイルを削除する必要があります。
当然、サブフォルダーの中にサブフォルダーやファイルがあれば削除できません。
RmDirステートメントで削除しようとすると一番深い階層から再帰的に削除してくる必要があります。
RmDirステートメントをお勧めしないのはこういう理由からです。
FileSystemObjectを使ったフォルダーの削除
DeleteFolderメソッドを使います。
削除対象フォルダーにサブフォルダーやファイルがあっても削除できます。
実行プログラム
1 2 3 4 5 6 7 8 9 |
Sub Sample7_7_2() Dim objFSO As Object Set objFSO = CreateObject("Scripting.FileSystemObject") objFSO.DeleteFolder "C:\excelmemo\Sample7_7" End Sub |
- 中に読み取り専用ファイルがある場合は削除できません。
- 隠しファイルがあっても削除できます。
- 削除対象フォルダーが隠しフォルダーであっても削除できます。