Vba: jak otworzyć skoroszyt ze ścieżki


Aby otworzyć skoroszyt programu Excel z określonej ścieżki, można użyć metody Workbooks.Open w języku VBA.

Oto typowy sposób wykorzystania tej funkcji w praktyce:

 SubOpenWorkbook ()

Dim wb As Workbook
Dim FilePath As String

FilePath = InputBox("Please Enter File Path")
Workbooks.Open FilePath

End Sub

Po wykonaniu tego makra pojawi się pole wprowadzania, w którym użytkownik może wprowadzić ścieżkę do określonego skoroszytu programu Excel.

Makro następnie automatycznie znajdzie skoroszyt znajdujący się w określonej ścieżce i otworzy go w programie Excel.

Poniższy przykład pokazuje, jak zastosować tę składnię w praktyce.

Przykład: Jak otworzyć skoroszyt ze ścieżki za pomocą VBA

Załóżmy, że mamy skoroszyt programu Excel o nazwie my_workbook2.xlsx znajdujący się w następującej lokalizacji:

C:\Users\bob\Documents\my_workbook2.xlsx

Załóżmy, że chcemy użyć języka VBA do automatycznego otwarcia tego skoroszytu.

W tym celu możemy utworzyć następujące makro:

 SubOpenWorkbook ()

Dim wb As Workbook
Dim FilePath As String

FilePath = InputBox("Please Enter File Path")
Workbooks.Open FilePath

End Sub

Po uruchomieniu tego makra pojawi się okienko, w którym w polu wejściowym możemy wpisać ścieżkę do skoroszytu:

Po kliknięciu OK makro otworzy skoroszyt programu Excel znajdujący się we wskazanej przez nas ścieżce.

Pamiętaj, że jeśli wpiszesz nazwę skoroszytu w ścieżce pliku, która nie istnieje, VBA wygeneruje komunikat o błędzie.

Załóżmy na przykład, że próbujemy otworzyć skoroszyt o nazwie mój_workbook3.xlsx , który nie istnieje.

VBA wyświetli następujący komunikat o błędzie:

Dzięki temu wiemy, że podana ścieżka do pliku nie istnieje.

Uwaga : Pełną dokumentację metody Workbooks.Open w VBA znajdziesz tutaj .

Dodatkowe zasoby

Poniższe samouczki wyjaśniają, jak wykonywać inne typowe zadania w VBA:

VBA: Jak policzyć liczbę arkuszy w skoroszycie
VBA: Jak zapisać i zamknąć skoroszyt
VBA: sprawdź, czy skoroszyt jest otwarty

Dodaj komentarz

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *