Makra programu Microsoft Excel mogą znacznie przyspieszyć pracę z dokumentami w tym arkuszu kalkulacyjnym. Osiąga się to poprzez zautomatyzowanie powtarzających się akcji zarejestrowanych w specjalnym kodzie. Porozmawiajmy o tym, jak tworzyć makra w Excelu i jak je edytować.

Sposoby pisania makr

Makro można zapisać na dwa sposoby:

  • automatycznie;
  • ręcznie.

Korzystając z pierwszej opcji, po prostu rejestrujesz określone akcje w programie Microsoft Excel, który właśnie wykonujesz. Następnie możesz zagrać w tym rekordzie. Ta metoda jest bardzo łatwa i nie wymaga znajomości kodu, ale jej stosowanie w praktyce jest raczej ograniczone.

Natomiast ręczne nagrywanie makr wymaga znajomości programowania, ponieważ kod wpisywany jest ręcznie z klawiatury. Ale poprawnie napisany kod w ten sposób może znacznie przyspieszyć realizację procesów.

Automatyczne nagrywanie makr

Zanim zaczniesz automatyczne nagrywanie makr, musisz włącz makra w Microsoft Excel .

Włączanie makr w Microsoft Excel

Następnie przejdź do zakładki "Programista". Klikamy przycisk "Record macro", który znajduje się na taśmie w oknie narzędziowym "Code".

Włącz nagrywanie makr w Microsoft Excel

Otworzy się okno Ustawienia nagrywania makr. Tutaj możesz podać dowolną nazwę makra, jeśli ustawienie domyślne nie pasuje do ciebie. Najważniejsze, że nazwa powinna zaczynać się od litery, a nie numeru. Tytuł nie powinien zawierać spacji. Zostawiliśmy domyślną nazwę - "Makro1".

Natychmiast, jeśli chcesz, możesz ustawić skrót klawiaturowy, kiedy klikniesz, w którym makrze zostanie uruchomione. Pierwszy klucz musi być klawiszem Ctrl, a drugi klawisz jest ustawiony przez użytkownika. Na przykład, my, na przykład, ustawiliśmy klawisz M.

Następnie musisz określić miejsce przechowywania makra. Domyślnie będzie przechowywany w tej samej książce (pliku), ale w razie potrzeby możesz ustawić pamięć w nowej książce lub w oddzielnej książce zawierającej makra. Zostawimy wartość domyślną.

W najniższym polu ustawień makr możesz pozostawić dowolny kontekstowy opis tego makra. Ale nie jest to konieczne.

Po zakończeniu wszystkich ustawień kliknij przycisk "OK".

Ustawienia nagrywania makr w Microsoft Excel

Następnie wszystkie twoje działania w tym pliku Excel (pliku) będą zapisywane w makrze aż do zatrzymania nagrania.

Na przykład, napiszmy najprostsze działanie arytmetyczne: dodanie zawartości trzech komórek (= C4 + C5 + C6).

Formuła w programie Microsoft Excel

Następnie kliknij przycisk "Zatrzymaj nagrywanie". Ten przycisk został przekonwertowany z przycisku "Record Macro" po włączeniu nagrywania.

Zatrzymaj nagrywanie makra w programie Microsoft Excel

Uruchamianie makra

Aby sprawdzić, jak działa zarejestrowane makro, klikamy przycisk "Makra" w tym samym polu narzędziowym "Kod" lub naciskamy Alt + F8.

Przejdź do początku makra w programie Microsoft Excel

Następnie otworzy się okno z listą zarejestrowanych makr. Poszukaj nagranego makra, wybierz je i kliknij przycisk "Uruchom".

Wybór makr w Microsoft Excel

Możesz zrobić jeszcze łatwiej i nawet nie zadzwonić do okna wyboru makra. Pamiętamy również, że nagrywaliśmy kombinację "klawiszy szybkiego dostępu" do szybkiego wywołania makra. W naszym przypadku jest to Ctrl + M. Kombinację tę wpisujemy na klawiaturze, po której zaczyna się makro.

Jak widać, makro wykonało dokładnie wszystkie akcje, które zostały wcześniej zarejestrowane.

Makro wykonane w Microsoft Excel

Edytowanie makra

Aby edytować makro, ponownie kliknij przycisk "Makra". W oknie, które zostanie otwarte, wybierz żądane makro i kliknij przycisk "Zmień".

Przechodzenie do zmiany makra w programie Microsoft Excel

Otwiera się Microsoft Visual Basic (VBE) - środowisko, w którym edytowane są makra.

Microsoft Visual Basic w Microsoft Excel

Każda pozycja makra rozpoczyna się od polecenia Sub i kończy się poleceniem End Sub. Natychmiast po poleceniu Sub podano nazwę makra. "Zakres (...") Wybierz "operator wskazuje wybór komórki. Na przykład z "Range (" C4 ") .Wybierz" polecenie, wybrana jest komórka C4. Operator "ActiveCell.FormulaR1C1" służy do rejestrowania akcji w formułach i innych obliczeń.

Spróbujmy trochę zmienić makro. Aby to zrobić, dodaj następujące wyrażenie do makra:

Zakres ("C3") Wybierz
ActiveCell.FormulaR1C1 = "11"

Wyrażenie "ActiveCell.FormulaR1C1 =" = R [-3] C + R [-2] C + R [-1] C "" jest zastąpione przez "ActiveCell.FormulaR1C1 =" = R [-4] C + R [-3 ] C + R [-2] C + R [-1] C "".

Modyfikowanie makra w programie Microsoft Excel

Zamknij edytor i uruchom makro, tak jak ostatnio. Jak widać, ze względu na wprowadzone przez nas zmiany dodano jeszcze jedną komórkę z danymi. Zostało to również uwzględnione przy obliczaniu całkowitej kwoty.

Jeśli makro jest zbyt duże, wykonanie może zająć dużo czasu. Ale dzięki ręcznej zmianie kodu możemy przyspieszyć ten proces. Dodaj polecenie "Application.ScreenUpdating = False". Oszczędzi to moc obliczeniową, a zatem przyspieszy pracę. Osiąga się to przez nieodświeżanie ekranu podczas czynności obliczeniowych. Aby wznowić aktualizację po wykonaniu makra, na końcu wpisujemy polecenie "Application.ScreenUpdating = True"

Dodajemy również polecenie "Application.Calculation = xlCalculationManual" na początku kodu, a na końcu kodu dodajemy "Application.Calculation = xlCalculationAutomatic". W ten sposób najpierw wyłączamy automatyczne przeliczanie wyniku po każdej zmianie komórki i włączamy makro na końcu makra. W związku z tym program Excel obliczy wynik tylko raz i nie będzie go stale przeliczał, co pozwoli zaoszczędzić czas.

Modyfikowanie kodu w Microsoft Visual Basic w Microsoft Excel

Pisanie kodu makr od początku

Zaawansowani użytkownicy mogą wykonywać nie tylko edycję i optymalizację zarejestrowanych makr, ale także zapisywać kod makr od zera. Aby przejść do tego, musisz kliknąć przycisk "Visual Basic", który znajduje się na samym początku taśmy programisty.

Przejdź do ręcznego tworzenia makra w programie Microsoft Excel

Następnie otwiera się znane okno edytora VBE.

Okno edytora VBE w Microsoft Excel

Programator ręcznie zapisuje kod makra.

Jak widać, makra w Microsoft Excel mogą znacznie przyspieszyć wykonywanie rutynowych i monotonnych procesów. Ale w większości przypadków bardziej odpowiednie są do tego makra, których kod jest zapisywany ręcznie, a nie automatycznie rejestrowane akcje. Ponadto kod makro można zoptymalizować za pomocą edytora VBE, aby przyspieszyć proces wykonywania zadań.