● 概要 ●
WshShellオブジェクトのSpecialFoldersプロパティを利用すると、特殊フォルダのパスを取得することができます。デスクトップは特殊フォルダになるので、これを利用することで、デスクトップのパスを取得することができます。
構文 Object.SpecialFolders(index)
設定項目 内容
Object WshShellオブジェクト
index 特殊フォルダを表すインデックス番号か文字列
特殊フォルダを表すインデックス番号とその文字列の主なものは、次のようになります。
インデックス番号 文字列 特殊フォルダ
4または10 Desktop 個人用のデスクトップフォルダ
5 AppData 個人用のApplication Data フォルダ
11 StartMenu 個人用のスタートメニューフォルダ
12 SendTo 個人用のSendToフォルダ
16 MyDocuments 個人用のマイドキュメントフォルダ
次のサンプルは、デスクトップフォルダのパスを取得して、イミディエイトウィンドウに表示します。なお、このサンプルを実行するには「Windows Script Host Object Model」への参照設定が必要です。
● サンプル ●
Sub Sample()
Dim DesktopPath As String
Dim ShellObject As IWshRuntimeLibrary.WshShell
Set ShellObject = New IWshRuntimeLibrary.WshShell
DesktopPath = ShellObject.SpecialFolders("Desktop")
Debug.Print DesktopPath
End Sub