Home > 即効テクニック > Excel VBA > ファイル操作関連のテクニック > デスクトップのパスを表示する

即効テクニック

ファイル操作関連のテクニック

デスクトップのパスを表示する

(Excel 2000/2002/2003)
● 概要 ●

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