【VBScript】フォルダの存在チェック(Shellアプリケーション版)


この記事はプロモーションを含みます。

ホーム > VBScript 逆引きリファレンス

以前にファイルシステムオブジェクトを使用したフォルダの存在チェック方法を解説しましたが、今回は、Shellアプリケーションを使用する方法をご紹介したいと思います。

↓ファイルシステムオブジェクト版はこちらをご覧ください。↓

下記がサンプルのソースコードになります。

流れとしては、Shellアプリケーションを作成してから、フォルダオブジェクトを作成します。
その後、フォルダオブジェクトを用いて、存在チェックを行います。

ここでの注意点ですが、
条件分岐(If文)が、「Not objFolder Is Nothing」となっています。
これは、「objFolder Is Nothing」がフォルダが存在しない場合となり、さらに先頭に「Not」があるため、フォルダが存在しない場合の逆、つまり、フォルダが存在する場合という条件になります。
少しややこしいですが、こういうものだと覚えておきましょう。

Option Explicit

' チェック対象フォルダ
Dim folder
folder = "C:\work"

' Shellアプリケーションオブジェクトの作成
Dim shell
Set shell = CreateObject("Shell.Application")

' フォルダオブジェクトの作成
Dim objFolder
Set objFolder = shell.NameSpace(folder)

' フォルダの存在チェック
If (Not objFolder Is Nothing) Then
	MsgBox("存在する")
Else
	MsgBox("存在しない")
End If

' フォルダオブジェクトの破棄
Set shell = objFolder

' Shellアプリケーションオブジェクトの破棄
Set shell = Nothing

コメント

タイトルとURLをコピーしました