Szukaj na tym blogu

Otwarcie pliku wskazanego przez użytkownika. Zmiana scieżki domyslnej w Application.GetOpenFilename /Open a user-specified file. Change default directory for Application.GetOpenFilename VBA


Private Declare Function SetCurrentDirectoryA Lib _
"kernel32" (ByVal lpPathName As String)  As Long 

'Private - dzieła w tym module Public w wielu modułach

'------------------------------------------------------------------------------------------------------------------

Sub otw_path()


Dim gdzie As String


gdzie = ThisWorkbook.Path & "\" ' przyklad dla wywołania lokalizacji tego pliku na którym pracujemy

'gdzie = "C:" ' przykład wywołania ścieżki dla lokalizacji z danego komputera

'gdzie = "\\costam1\costam2\costam3\" 'przykład dla lokalizacji sieciowej


SetUNCPath (gdzie) 'to narzedzie nam zmienia ustawienia systemu, których nie zmieni Ci ChDir :)



FileFilter = "Pliki Excel (*.xlsx;*.xlsm),*.xlsx;*.xlsm" 

'Tutaj podajemy łańcuch określający kryterium filtrowania plików tu dwa rodzaje xlsx i xlsm

    

    SciezkaPliku = Application.GetOpenFilename(FileFilter) 'Otwarcie okna dialogowego oraz pobranie 'ścieżki pliku do zmiennej

    If SciezkaPliku = False Then

        MsgBox "Nie wybrano żadnego pliku." ' komunikat gdy nic nie wybierzemy

        Exit Sub

    End If

   Workbooks.Open SciezkaPliku 'otwarcie wskazanego pliku

   nazwapliku = ActiveWorkbook.Name ' tu pozyskujemy nazwę pliku który zostal wskazany i 'otwartyprzez użytkownika

End Sub

'-------------------------------------------------------------------------------------------------------------------------

Sub SetUNCPath(sPath As String) 'to narzedzie nam zmienia ustawienia systemu, których nie zmieni ChDir :)

Dim lReturn As Long

lReturn = SetCurrentDirectoryA(sPath)

If lReturn = 0 Then MsgBox "Error setting path."

End Sub


Brak komentarzy:

Prześlij komentarz