J
jbl25
Hello,
I'm using the function below to pop up a "Browse for folder" window in
order to get a network file path. Later in the code I save the
workbook to the path under a new name. If I map a drive directly to
the folder I want to save to, I get a run-time 1004 error saying the
file cannot be accessed. If I map to the folder one level above where
I want to save, then select down a level in the browse window, it
works. If I start at the very top level in the browse window and
manually select all the way down to the desired location, it also
works. Also no problems when saving directly to my computer. I'm
running excel 2003 and using Lib shell32.dll. Any ideas why this is
happening? Thanks very much for your help!!
Function GetDirectory(Optional Msg) As String
Dim bInfo As Browseinfo
Dim Path As String
Dim r As Long, X As Long, pos As Integer
bInfo.pidlroot = 0&
If IsMissing(Msg) Then
bInfo.lpsztitle = "Select a folder"
Else
bInfo.lpsztitle = Msg
End If
bInfo.ulflags = &H1
X = SHBrowseforfolder(bInfo)
Path = Space$(512)
r = SHGetPathFromIDList(ByVal X, ByVal Path)
If r Then
pos = InStr(Path, Chr$(0))
GetDirectory = Left(Path, pos - 1)
Else
GetDirectory = ""
End If
End Function
I'm using the function below to pop up a "Browse for folder" window in
order to get a network file path. Later in the code I save the
workbook to the path under a new name. If I map a drive directly to
the folder I want to save to, I get a run-time 1004 error saying the
file cannot be accessed. If I map to the folder one level above where
I want to save, then select down a level in the browse window, it
works. If I start at the very top level in the browse window and
manually select all the way down to the desired location, it also
works. Also no problems when saving directly to my computer. I'm
running excel 2003 and using Lib shell32.dll. Any ideas why this is
happening? Thanks very much for your help!!
Function GetDirectory(Optional Msg) As String
Dim bInfo As Browseinfo
Dim Path As String
Dim r As Long, X As Long, pos As Integer
bInfo.pidlroot = 0&
If IsMissing(Msg) Then
bInfo.lpsztitle = "Select a folder"
Else
bInfo.lpsztitle = Msg
End If
bInfo.ulflags = &H1
X = SHBrowseforfolder(bInfo)
Path = Space$(512)
r = SHGetPathFromIDList(ByVal X, ByVal Path)
If r Then
pos = InStr(Path, Chr$(0))
GetDirectory = Left(Path, pos - 1)
Else
GetDirectory = ""
End If
End Function