Automatyczne uruchamianie makra w Excel i Access za pomocą VBS

Automatyczne uruchamianie makr Excel i Access z VBS

Poniżej prosty skrypt służący do uruchomienia makr w Excel lub Access przy pomocy pliku VBS. Na samym końcu artykułu przedstawiam informację, w jaki sposób podpiąć skrypt pod harmonogram zadań Windows. Życzę udanego korzystania.

Access – Automatyczne uruchamianie makra

Jedyne, co musimy zrobić to wskazać lokalizację pliku Access oraz nazwę makra, które ma zostać uruchomione. Następnie wklejamy skrypt do notatnika i zapisujemy jako nazwa_pliku.VBS.

set objaccess = createobject("Access.application")
objaccess.opencurrentdatabase("D:\NAZWA_PLIKU_BAZY.ACCDB") 'Lokalizacja pliku Access
objaccess.run "Makro1" 'nazwa makra do uruchomienia
objaccess.CloseCurrentDatabase
set objaccess=nothing

Automatyczne uruchomienie makra Excel

Poniżej analogiczny skrypt do uruchomienia Excela oraz makra w Excel. Tworzymy plik z rozszerzeniem VBS (np uruchom.vbs) w notatniku o następującej treści:

Option Explicit
on error resume next
Dim xlApp, xlBook
Set xlApp = CreateObject("Excel.Application")
Set xlBook = xlApp.Workbooks.Open("D:\NAZWA_PLIKU_EXCEL.xlsm", 0, True) 'Lokalizacja pliku EXcel
xlApp.Run "Makro1" 'Nazwa makra do uruchomienia
xlBook.Close
xlApp.Quit
Set xlBook = Nothing
Set xlApp = Nothing
'WScript.Echo "Finished." 'Tutaj możemy wpisać komunikat, który wyświetli się po uruchomieniu makra
WScript.Quit

Jeśli chcemy, by nasze makra uruchamiały się automatycznie o określonej godzinie, korzystamy z Harmonogramu zadań. Otworzymy go wpisując „HARM” w Menu Start >> Wyszukaj. Po uruchomieniu harmonogramu zadań przechodzimy do Biblioteki Harmonogramu zadań w lewym oknie harmonogramu. Następnie  prawym oknie wybieramy „Utwórz zadanie„. W zakładce „Ogólne” Wprowadzamy nazwę naszego zadania. W zakładce „Akcje” wskazujemy lokalizację wcześniej utworzonego pliku VBS. W zakładce „Wyzwalacze” definiujemy, kiedy wskazany plik VBS ma się uruchamiać”. Gotowe.

Dodaj komentarz

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