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