【VBA】空フォルダかどうかを判定する【チェック】

VBAで
 ・空フォルダかどうかを判定
できます!

Windows APIによって判定
できます!

Windows APIの1つである
 ・PathIsDirectoryEmpty関数
を使用します!

PR

VBAコード

ここでは例として
 ・デスクトップ配下のフォルダ「test」が
 ・空フォルダかどうかを判定
します。

フォルダ「test」は空フォルダ
フォルダ「test」は空フォルダ
Option Explicit

'WindowsAPI PathIsDirectoryEmpty
Declare PtrSafe Function PathIsDirectoryEmpty Lib "SHLWAPI.DLL" Alias "PathIsDirectoryEmptyA" (ByVal pszPath As String) As Boolean


Sub sample()

    Dim targetFolder As String
    
    'フォルダを指定
    targetFolder = "C:\Users\user\Desktop\test"

    '空フォルダかどうかを判定
    If PathIsDirectoryEmpty(targetFolder) = 1 Then
        MsgBox "空フォルダです!"
    Else
        MsgBox "空フォルダではありません!"
    End If
    
End Sub

Windows APIの「PathIsDirectoryEmpty関数」を宣言(=記述)します(4行目)。
※「PathIsDirectoryEmpty関数」を使用できるようにするためのお約束の記述です。
※内容を把握する必要はありません。ただ記述するだけでよいです。

「確認したいフォルダ」を指定します(13行目)。

PR

実行結果

空フォルダかどうかを判定できました。

実行結果
実行結果
PR

参考

上記のVBAコードで使用した以下の詳細は、公式サイトをご確認ください。

●Windows APIの「PathIsDirectoryEmpty関数」