There's a bunch of Namespace options, but this gets the current user's desktop
Option Explicit Sub test() MsgBox Desktop_Path End Sub Function Desktop_Path() As String Const sf_DESKTOP As Variant = 0 Desktop_Path = CreateObject("Shell.Application").Namespace(sf_DESKTOP).Self.Path End Function