Как заставить этот код правильно работать с личной папкой, например, если у кого-то нет прав на чтение / запись, как я могу отобразить правильное сообщение об ошибке вместо того, чтобы не была выбрана ни одна папка.Прямо сейчас он отображает только выбранную папку, если строка пуста, но я хотел бы рассказать им о защищенной папке.Любая помощь будет принята с благодарностью!
Sub TestFunc()
Dim BaseDirectory As String
BaseDirectory = GetFolder()
If (BaseDirectory = vbNullString) Then
MsgBox "No Folder Selected", vbExclamation, "Error"
End If
EndSub
Function GetFolder() As String
Dim fldr As FileDialog
Dim sItem As String
Set fldr = Application.FileDialog(msoFileDialogFolderPicker)
With fldr
.Title = "Select a Folder"
.AllowMultiSelect = False
.InitialFileName = Application.DefaultFilePath
If .Show <> -1 Then GoTo NextCode
sItem = .SelectedItems(1)
End With
NextCode:
GetFolder = sItem
Set fldr = Nothing
End Function