[daily snippet] Excel VBA – autostart makra przy otwarciu arkusza
kwiecień 19th, 2011. Brak komentarzy.
Kategorie: Visual Basic, Zabawy z kodem.
Skoro wiemy już, jak zamknąć arkusz, przyda nam się wiedza, jak zrobić to w momencie otwarcia :)
A tak na poważnie – w niektórych firmach Excel jest używany do obróbki danych, bo interfejs jest znajomy dla większości pracowników biurowych, nie mających wiele wspólnego z komputerami. Można więc z arkusza Excelowego zrobić świetne narzędzie front-endowe. Komunikacja z dowolną bazą jest na wyciągnięcie ręki, więc niech użytkownik wprowadzi swoje dane, a VBA zrobi resztę.
W ten sposób można na przykład aktualizować stan magazynowy w sklepie internetowym. W takim przypadku przydałoby się zrobić to następująco:
(yUML mi się zbiesił, więc algorytm macie słownie)
1. Otwarcie arkusza (może być też np. z autostartem Windows).
2. Start makra:
2a. Pobranie stanu magazynowego z bazy programu wewnętrznego.
2b. Pobranie stanu magazynowego z bazy sklepu internetowego.
2c. Czy stany się zgadzają?
TAK: przejdź do punktu 3.
NIE: poproś użytkownika o zmiany, zapisz, przejdź do punktu 3.
3. Zamknij arkusz.
Jak to mawiają, “long story short”… w ThisWorkbook należy umieścić metodę (funkcję?):
Private Sub Workbook_Open() 'kod do wykonania po otwarciu End Sub