Jak utworzyć makro lub skrypt VBA w programie Excel?

Microsoft Excel umożliwia użytkownikom automatyzację funkcji i poleceń za pomocą makr i skryptów Visual Basic for Applications ( VBA ). VBA to język programowania, którego Excel(VBA is the programming language Excel) używa do tworzenia makr. Będzie również wykonywał zautomatyzowane polecenia w oparciu o określone warunki.

Makra to seria wstępnie nagranych poleceń. Uruchamiają się automatycznie po wydaniu określonego polecenia. Jeśli masz zadania w programie Microsoft Excel(Microsoft Excel) , które wykonujesz wielokrotnie, takie jak księgowość, zarządzanie projektami lub płace, automatyzacja tych procesów może zaoszczędzić dużo czasu.

Na karcie Deweloper(Developer) na Wstążce(Ribbon) w programie Excel użytkownicy mogą rejestrować kliknięcia myszą i naciśnięcia klawiszy (makra). Jednak niektóre funkcje wymagają bardziej szczegółowych skryptów niż mogą zapewnić makra. W tym miejscu skrypty VBA stają się ogromną korzyścią. Pozwala użytkownikom tworzyć bardziej złożone skrypty.

W tym artykule wyjaśnimy, co następuje:

  • Włączanie skryptów i makr
  • Jak utworzyć makro w programie Excel
  • Konkretny przykład makra
  • Dowiedz się więcej o VBA
  • Utwórz przycisk(Button) , aby zacząć korzystać z VBA
  • Dodaj kod(Add Code) , aby nadać funkcji przycisku(Button Functionality)
  • Zadziałało?

Włączanie skryptów i makr(Enabling Scripts & Macros)

Aby móc tworzyć makra lub skrypty VBA w programie (VBA)Excel , musisz włączyć kartę Deweloper w menu (Developer )Wstążki(Ribbon) . Karta Deweloper(Developer) nie jest domyślnie włączona. Aby to włączyć:

  • Otwórz arkusz programu Excel.
  • Kliknij Plik(File ) > Opcje( Options ) > Dostosuj wstążkę.( Customize Ribbon.)

  • Zaznacz pole obok Deweloper(Developer) .

  • Kliknij kartę Deweloper(Developer) z menu Wstążki(Ribbon) .

  • Następnie kliknij Zabezpieczenia makr(Macro Security) i zaznacz pole Włącz wszystkie makra (niezalecane; można uruchomić potencjalnie niebezpieczny kod). (Enable all macros (not recommended; potentially dangerous code can run). )
  • Następnie kliknij OK.

Powodem, dla którego makra nie są domyślnie włączone i zawierają ostrzeżenie, jest to, że jest to kod komputerowy, który może zawierać złośliwe oprogramowanie.

Upewnij(Make) się, że dokument pochodzi z zaufanego źródła, jeśli pracujesz nad udostępnionym projektem w programie Excel i innych programach firmy Microsoft .(Microsoft)

Po zakończeniu korzystania ze skryptów i makr wyłącz wszystkie makra, aby zapobiec zainfekowaniu innych dokumentów przez potencjalnie złośliwy kod.

Utwórz makro w programie Excel(Create a Macro in Excel)

Wszystkie akcje wykonywane w programie Excel podczas rejestrowania makra są do niego dodawane. 

  • Na karcie Deweloper kliknij opcję Nagraj makro(Record Macro) .

  • Wprowadź nazwę makra(Macro name) , klawisz skrótu(Shortcut key) i ​​opis. (Description. )Nazwy makr(Macro) muszą zaczynać się od litery i nie mogą zawierać spacji. Klawisz skrótu musi być literą.

Zdecyduj, gdzie chcesz przechowywać makro, korzystając z następujących opcji:

  • Skoroszyt makr osobistych(Personal Macro Workbook) : utworzy ukryty dokument programu Excel(Excel) z przechowywanymi makrami do użycia z dowolnymi dokumentami programu Excel .(Excel)
  • Nowy skoroszyt(New Workbook) : utworzy nowy dokument Excel do przechowywania utworzonych makr.
  • Ten skoroszyt(This Workbook) : zostanie zastosowany tylko do dokumentu, który aktualnie edytujesz.

Po zakończeniu kliknij OK

  • Prześledź(Run) działania, które chcesz zautomatyzować. Po zakończeniu kliknij Zatrzymaj nagrywanie(Stop Recording)
  • Jeśli chcesz uzyskać dostęp do swojego makra, użyj skrótu klawiaturowego, który mu nadałeś.

Konkretny przykład makra(Specific Example Of a Macro)

Zacznijmy od prostego arkusza kalkulacyjnego dla klientów i tego, ile są winni. Zaczniemy od stworzenia makra do formatowania arkusza.

Załóżmy, że decydujesz, że wszystkie arkusze kalkulacyjne powinny mieć inny format, na przykład umieszczając imię i nazwisko w osobnych kolumnach. 

Możesz to zmienić ręcznie. Możesz też utworzyć program za pomocą makra, aby automatycznie go poprawnie sformatować.

Nagraj makro(Record The Macro)

  • Kliknij Nagraj makro(Record Macro) . Nazwijmy go Format_Customer_Data i kliknij OK
  • Aby uzyskać żądane formatowanie, zmienimy nazwę pierwszej kolumny na Imię(First Name)
  • Następnie wstaw kolumnę obok A i nazwij ją Last Name
  • Podświetl(Highlight) wszystkie nazwiska w pierwszej kolumnie (które nadal zawierają imię i nazwisko) i kliknij Dane(Data) z nawigacji wstążki.
  • Kliknij Tekst do kolumn(Text to Columns) .

  • Zaznacz pole wyboru Rozdzielone(Delimited) > Dalej(Next ) > Oddziel spacją(Separate by Space) > Dalej(Next ) > Zakończ(Finish) . Zobacz zrzut ekranu poniżej i zobacz, jak imiona i nazwiska zostały oddzielone w powyższym procesie.

  • Aby sformatować pole Saldo(Balance Due) należności, zaznacz kwoty. Kliknij(Click) Strona główna(Home ) > Formatowanie warunkowe(Conditional Formatting) > Wyróżnij reguły komórek(Highlight Cell Rules) > Większe niż(Greater Than ) > 0 .

To podświetli komórki, które mają należne saldo. Dodaliśmy kilku klientów bez salda z powodu dalszego zilustrowania formatowania.  

  • Wróć do Deweloper(Developer ) i kliknij Zatrzymaj nagrywanie(Stop Recording) .

Zastosuj makro(Apply The Macro)

Zacznijmy od oryginalnego arkusza kalkulacyjnego, zanim nagramy makro, aby je poprawnie sformatować. Kliknij (Click)Makra(Macros) , wybierz i uruchom(Run) właśnie utworzone makro.

Po uruchomieniu makra całe formatowanie jest wykonywane za Ciebie. To właśnie utworzone makro jest przechowywane w Edytorze Visual Basic(Visual Basic Editor) .

Użytkownicy mogą uruchamiać makra na kilka różnych sposobów. Przeczytaj Uruchom makro(Run a macro) , aby dowiedzieć się więcej.  

Dowiedz się więcej o VBA(Learn More About VBA)

Aby dowiedzieć się więcej o VBA, kliknij Makro(Macro) na karcie Deweloper(Developer) . Znajdź taki, który utworzyłeś i kliknij Edytuj.(Edit.)

Kod, który widzisz w powyższym polu, został utworzony podczas rejestrowania makra. 

Jest to również to, co uruchomisz, gdy chcesz sformatować inne arkusze kalkulacyjne płatności klientów w ten sam sposób.

Utwórz przycisk, aby rozpocząć korzystanie z VBA(Create a Button To Get Started With VBA)

Korzystając z tego samego arkusza kalkulacyjnego powyżej z klientami i kwotą, którą są winni, utwórzmy przelicznik walut.

  • Aby wstawić element przycisku, przejdź do karty Deweloper(Developer )
  • Wybierz Przycisk polecenia ActiveX(ActiveX Command Button ) z listy rozwijanej obok Wstaw(Insert) w sekcji Kontrolki (Controls).

  • Przeciągnij(Drag) przycisk w dowolne miejsce arkusza kalkulacyjnego, aby mieć do niego łatwy dostęp i zmienić go później, jeśli chcesz.

  • Aby dołączyć kod, kliknij prawym przyciskiem myszy przycisk i wybierz Właściwości(Properties) . Zachowamy nazwę(Name) jako CommandButton i podpis(Caption ) do konwersji( Convert ) (jest to tekst przycisku).

Dodaj kod, aby nadać przyciskowi funkcjonalność(Add Code To Give The Button Functionality)

Kodowanie VBA(VBA) nie odbywa się w interfejsie Excela . (Excel)Odbywa się to w oddzielnym środowisku.  

  • Przejdź do zakładki Deweloper(Developer) i upewnij się, że tryb projektowania(Design Mode) jest aktywny.

  • Aby uzyskać dostęp do kodu przycisku, który właśnie utworzyliśmy, kliknij go prawym przyciskiem myszy i wybierz Wyświetl kod(View Code) .

  • Patrząc na kod na poniższym zrzucie ekranu, zauważ, że początek ( Private Sub ) i koniec ( End Sub ) kodu już tam jest.

  • Poniższy kod steruje procedurą przeliczania walut.

ActiveCell.Value = (ActiveCell * 1.28)

Naszym celem w tej sekcji jest przeliczenie waluty w naszym arkuszu kalkulacyjnym. Powyższy skrypt odzwierciedla kurs wymiany z GBP na USD . Nową wartością komórki będzie aktualna wartość pomnożona przez 1,28.

Poniższy zrzut ekranu pokazuje, jak wygląda kod w oknie VBA po wstawieniu.

  • Przejdź do Plik(File ) w górnej nawigacji i kliknij Zamknij i wróć do programu Microsoft Excel(click on Close and Return to Microsoft Excel) , aby powrócić do głównego interfejsu programu Excel .(Excel)

Zadziałało?(Did It Work?)

Zanim będziesz mógł przetestować swój kod, musisz najpierw wyłączyć tryb projektowania(Design Mode) (kliknij go), aby uniknąć dalszych modyfikacji i zapewnić funkcjonalność przycisku.

  • Wpisz(Type) dowolną liczbę w arkuszu kalkulacyjnym, a następnie kliknij przycisk Konwertuj(Convert) . Jeśli wartość twojej liczby wzrośnie o około jedną czwartą, to zadziałało.

W tym przykładzie wstawiam cyfrę 4 do komórki. Po kliknięciu Konwertuj(Convert) liczba zmieniła się na 5.12. Ponieważ 4 razy 1,28 to 5,12, kod został wykonany poprawnie.

Teraz, gdy już wiesz, jak utworzyć makro lub skrypt w programie Excel(Excel) , możesz użyć ich do zautomatyzowania wielu działań w programie Excel(Excel) .



About the author

Jestem technikiem komputerowym z ponad 10-letnim doświadczeniem i doświadczeniem w pracy z urządzeniami z systemem Android. Od pięciu lat pracuję również w biurze, gdzie nauczyłem się obsługi Office 365 i MacOS. W wolnym czasie lubię spędzać czas na świeżym powietrzu, grając muzykę lub oglądając filmy.



Related posts