Pored iste, dat je i primer kako moze ista da se pozove.
Ovo moze da se modifikuje shodno potrebama.
U vasem slucaju, znaci f-ja se poziva dva puta - kako ste naveli za 'da mogu da biram folder iz koga konvertujem i folder u koji konvertujem'.
U svakom slucaju sta je sa nazivimi file-ova, posto folder (direktorijum) i file nisu isto?
Code:
Public Function DialogBrowseForFolder(Optional ByVal MultiSelect As Boolean = False, Optional InitialFileName As String = "") As String
On Error GoTo ErrHandler
Dim f As FileDialog
Dim r As String
r = ""
Set f = Application.FileDialog(msoFileDialogFolderPicker)
With f
.Title = "Odaberite lokaciju (folder)"
.AllowMultiSelect = MultiSelect
.InitialFileName = InitialFileName
If .Show = -1 Then r = .SelectedItems(1)
End With
If Len(Trim(r)) > 0 Then If Right(r, 1) <> "\" Then r = r & "\"
Debug.Print Now, "DialogBrowseForFolder()", MultiSelect, InitialFileName, "Return value: "; r
DialogBrowseForFolder = r
Set f = Nothing
Exit Function
ErrHandler:
' Prikazi poruku
MsgBox "Doslo je do greske prilikom pokusaja odabira lokacije (folder)" & vbCrLf & vbCrLf & "Greska #" & Err.Number & " - " & Err.Description, vbCritical, ""
Debug.Print Now, "DialogBrowseForFolder() Error", MultiSelect, InitialFileName, r
End Function
Sub PrimerKoriscenja()
Dim r As String
r = DialogBrowseForFolder(False, "")
If Len(Trim(r)) > 0 Then
Debug.Print "Lokacija je odabrana. Lokacija: "; r
Else
Debug.Print "Lokacija nije odabrana."
End If
End Sub
Public Function DialogBrowseForFolder(Optional ByVal MultiSelect As Boolean = False, Optional InitialFileName As String = "") As String
On Error GoTo ErrHandler
Dim f As FileDialog
Dim r As String
r = ""
Set f = Application.FileDialog(msoFileDialogFolderPicker)
With f
.Title = "Odaberite lokaciju (folder)"
.AllowMultiSelect = MultiSelect
.InitialFileName = InitialFileName
If .Show = -1 Then r = .SelectedItems(1)
End With
If Len(Trim(r)) > 0 Then If Right(r, 1) <> "\" Then r = r & "\"
Debug.Print Now, "DialogBrowseForFolder()", MultiSelect, InitialFileName, "Return value: "; r
DialogBrowseForFolder = r
Set f = Nothing
Exit Function
ErrHandler:
' Prikazi poruku
MsgBox "Doslo je do greske prilikom pokusaja odabira lokacije (folder)" & vbCrLf & vbCrLf & "Greska #" & Err.Number & " - " & Err.Description, vbCritical, ""
Debug.Print Now, "DialogBrowseForFolder() Error", MultiSelect, InitialFileName, r
End Function
Sub PrimerKoriscenja()
Dim r As String
r = DialogBrowseForFolder(False, "")
If Len(Trim(r)) > 0 Then
Debug.Print "Lokacija je odabrana. Lokacija: "; r
Else
Debug.Print "Lokacija nije odabrana."
End If
End Sub