Masz dość wykonywania powtarzalnych zadań w programie Microsoft Word? W programie ukryte jest potężne narzędzie do automatyzacji, które może zdjąć te zadania z rąk. Mówimy o makrach i chociaż ta funkcja opiera się na Visual Basic for Applications (VBA) firmy Microsoft, możesz jej używać, nawet jeśli pomysł kodowania sprawia ci kłopoty.
Po kliknięciu przycisku program Word zarejestruje Twoje działania, generując makro, które możesz odtwarzać tak często, jak chcesz. Jeśli masz ochotę na przygodę, możesz łatwo zmodyfikować makro, aby uzyskać dodatkowy stopień automatyzacji.
Tutaj pokażemy jeden prosty, ale przydatny przykład: jak zautomatyzować funkcję Znajdź i zamień w programie Word.
Nagrywanie makra
W tym przykładzie jesteś szanowanym prezesem Towarzystwa Konserwacji Zabytkowych Urządzeń Stomatologicznych. Masz dziesiątki dokumentów Worda na temat historycznych protez zębowych i tym podobnych, wszystkie z wyraźnie wymienioną nazwą społeczeństwa. Nagle zarząd głosuje za zmianą nazwy na Liga Konserwacji Antyków Stomatologicznych. Teraz potrzebujesz łatwego sposobu na aktualizację dokumentów.
Możesz zacząć od nowego, pustego dokumentu lub otworzyć istniejący. Jeśli jeszcze tego nie zrobiłeś, musisz włączyć kartę Deweloper.
Iść do Plik> Opcje> Dostosuj Wstążkę. Po prawej stronie pod Główne karty, Sprawdź Deweloper opcja. Wybierz OK i wyjdź.
Teraz stwórzmy nasze makro.
- Kliknij Deweloper> Zarejestruj makro.
- Zostaniesz poproszony o nazwanie makra. Wpisz „ChangeSocietyName” lub dowolną inną nazwę, która Ci odpowiada. Nazywając makra, unikaj spacji, kropek, wykrzykników i znaków specjalnych, w przeciwnym razie pojawi się komunikat o błędzie. Możesz używać cyfr, ale pierwszy znak musi być literą.
- Możesz przypisać makro do przycisku i / lub skrótu klawiaturowego, ale nie jest to wymagane. Jeśli wybierzesz przycisk, program Word pozwoli Ci dodać go do paska narzędzi szybkiego dostępu. Możesz również dodać krótki opis makra.
- Kliknij ok, a program Word będzie teraz rejestrować Twoje działania. Trafienie Ctrl + H aby przywołać Znajdź i zamień dialog.
- Wpisz „Towarzystwo Konserwacji Zabytkowych Urządzeń Stomatologicznych” w polu Znajdź i „Liga Konserwacji Zabytków Dentystycznych” w polu Zamień.
- Kliknij Zamień wszystko aby wykonać operację Znajdź i zamień. To jest jedyna akcja, którą chcesz nagrać. Nie ma znaczenia, czy makro faktycznie zastępuje tekst. Chodzi o to, aby zapisać go na inne dokumenty.
- To jest ważne: Kliknij Deweloper> Zatrzymaj nagrywanie. W przeciwnym razie makro będzie zawierało wszystkie kolejne akcje.
Teraz zobaczmy Twoje dzieło. Otwórz dokument zawierający nazwę towarzystwa. Kliknij Deweloper> Makra. Jeśli klikniesz dwukrotnie ChangeSocietyName, program Word automatycznie wykona operację Znajdź i zamień.
Wskazówka: Podczas rejestrowania makra może być konieczne wykonanie czynności, której nie chcesz nagrywać. Na przykład możesz chcieć skopiować i wkleić tekst do okna dialogowego Znajdź i zamień, zamiast wpisywać go ręcznie. Żaden problem: po prostu kliknij Deweloper> Wstrzymaj nagrywanie, skopiuj i wklej tekst, a następnie kliknij Deweloper> Wznów rejestrator. Następnie możesz ukończyć nagrywanie makr zgodnie z powyższym opisem.
Chociaż skupiliśmy się tutaj na programie Microsoft Word, możesz również używaj makr, aby zwiększyć produktywność w programie Excel. A jest ich wiele oszczędzające czas makra dla Microsoft OneNote.
Czy wiesz, że możesz zautomatyzować powtarzalne zadania w programie Microsoft Excel za pomocą makr? Pokażemy Ci, jak zarejestrować makro w programie Excel 2016, aby zaoszczędzić dużo czasu.
Zanurz się w kodeksie
Teraz przyjrzymy się dokładniej naszemu nowemu makrowi Worda. Iść do Deweloper> Makra, ale zamiast dwukrotnego klikania makra, zaznacz je i kliknij Edytować. Spowoduje to otwarcie edytora Visual Basic, niezależnego środowiska do tworzenia aplikacji VBA.
Może to wyglądać zniechęcająco, ale możesz zignorować menu i większość paneli. Zamiast tego skoncentruj się na oknie zawierającym kod. Jak widać, program Word właśnie napisał makro, które wykonuje operację Znajdź i zamień.
Sub ChangeSocietyName ()
'
'ChangeSocietyName Macro
„Zmień nazwę Towarzystwa Ochrony Zabytkowych Urządzeń Stomatologicznych”
'
Wybór. Odnaleźć. ClearFormatting
Wybór. Odnaleźć. Zastąpienie. ClearFormatting
Z wyborem. Odnaleźć
.Text = "Towarzystwo Konserwacji Zabytkowych Urządzeń Stomatologicznych"
.Zastąpienie. Text = "Liga konserwacji antyków dentystycznych"
.Forward = True
.Wrap = wdFindContinue
.Format = False
.MatchCase = False
.MatchWholeWord = False
.MatchWildcards = Fałsz
.MatchSoundsLike = False
.MatchAllWordForms = False
Kończyć z
Wybór. Odnaleźć. Wykonaj zamień: = wdReplaceAll
Napis końcowy
Wyjaśnijmy, co się tutaj dzieje.
„Sub” w pierwszym wierszu jest skrótem od „podprogramu”, czyli małego programu, który może działać samodzielnie lub jako część większej aplikacji VBA. Wiersze poprzedzone pojedynczymi cudzysłowami służą do komentowania. Cudzysłowy informują VBA, aby ignorował wszelkie instrukcje w tych wierszach.
Następnie dochodzimy do sedna kodu: kodu, który wykonuje operację Znajdź i zamień operacja. Jak widać, określa wartości dla każdej opcji w oknie dialogowym Znajdź i zamień, w tym tekst i tekst zastępczy w cudzysłowie. Plik Wybór. Odnaleźć. Wykonać polecenie pod koniec jest równoznaczne z kliknięciem przycisku „Zamień wszystko”.
Modyfikowanie makra
Aby używać makr, nie musisz majstrować w kodzie ani nawet na niego patrzeć. Ale możesz uzyskać więcej z tej funkcji, jeśli chcesz się w nią zanurzyć. Na przykład załóżmy, że podczas nagrywania makra popełnisz literówkę. Zamiast ponownie nagrywać, możesz przejść do Visual Basic i naprawić.
Możesz także dostosować makro, aby było bardziej przydatne, i to właśnie zrobimy tutaj. Po uruchomieniu funkcji Znajdź i zamień, ręcznie lub za pomocą makra, program Word zapamiętuje tekst znajdujący się i zamieniający. Następnym razem, gdy otworzysz okno dialogowe Znajdź i zamień, będzie wyglądać tak.
Lepiej byłoby wyczyścić wartości, aby uzyskać czyste okno dialogowe. Zrobimy to za pomocą drugiego makra, tyle że tym razem zrobimy to bezpośrednio w Visual Basic.
- W edytorze Visual Basic wybierz cały podprogram, od pierwszego wiersza do End Sub. Trafienie Ctrl + C skopiować.
- Umieść kursor pod End Sub i naciśnij Ctrl + V. Właśnie zduplikowałeś podprogram.
- Zmień nazwę z ChangeSocietyName na ClearFindReplace (lub dowolną inną, która Ci odpowiada). Jest to ważne, ponieważ VBA wygeneruje komunikat o błędzie, jeśli spróbujesz uruchomić makra ze zduplikowanymi nazwami.
- w .Tekst i Zastąpienie. Tekst wartości, usuń tekst, ale pozostaw znaki cudzysłowu. Zasadniczo mówisz programowi Word, aby niczego nie znalazł i nic nie zastąpił, ale jednocześnie usuwasz te wartości.
Wynik powinien wyglądać następująco:
Sub ClearFindReplace ()
'
„ClearFindReplace Macro
Wyczyść tekst z okna dialogowego Znajdź i zamień
'
Wybór. Odnaleźć. ClearFormatting
Wybór. Odnaleźć. Zastąpienie. ClearFormatting
Z wyborem. Odnaleźć
.Text = „”
.Zastąpienie. Text = „”
.Forward = True
.Wrap = wdFindContinue
.Format = False
.MatchCase = False
.MatchWholeWord = False
.MatchWildcards = Fałsz
.MatchSoundsLike = False
.MatchAllWordForms = False
Kończyć z
Wybór. Odnaleźć. Wykonaj zamień: = wdReplaceAll
Napis końcowy
Teraz wrócimy do makra ChangeSocietyName. Pod kodem Znajdź i zamień, ale przed End Sub, wprowadź ClearFindReplace (bez nawiasów na końcu).
Zgadza się: nie musisz wpisywać całego właśnie utworzonego kodu, wystarczy nazwę makra.
Sub ChangeSocietyName ()
'
'ChangeSocietyName Macro
„Zmień nazwę Towarzystwa Ochrony Zabytkowych Urządzeń Stomatologicznych”
'
Wybór. Odnaleźć. ClearFormatting
Wybór. Odnaleźć. Zastąpienie. ClearFormatting
Z wyborem. Odnaleźć
.Text = "Towarzystwo Konserwacji Zabytkowych Urządzeń Stomatologicznych"
.Zastąpienie. Text = "Liga konserwacji antyków dentystycznych"
.Forward = True
.Wrap = wdFindContinue
.Format = False
.MatchCase = False
.MatchWholeWord = False
.MatchWildcards = Fałsz
.MatchSoundsLike = False
.MatchAllWordForms = False
Kończyć z
Wybór. Odnaleźć. Wykonaj zamień: = wdReplaceAll
ClearFindReplace
Napis końcowy
Gdy program Word uruchamia ChangeSocietyName, najpierw wykona oryginalną funkcję Znajdź i zamień. Następnie zinterpretuje ClearFindReplace jako polecenie uruchomienia drugiego makra.
Idąc dalej z VBA
Jak widać, funkcja nagrywania makr w programie Word może pomóc Ci zaoszczędzić czas na niezliczone sposoby. Możesz tworzyć makra, aby zautomatyzować prawie każdą operację, aw edytorze Visual Basic możesz dostosować makra, osadzaj jedno makro wewnątrz drugiego lub utwórz podprogram, który wykonuje wiele makr jedno po inny.
Ponieważ VBA jest pełnoprawnym językiem programowania, można włączyć podprogramy do większych aplikacji za pomocą zmiennych, pętli, instrukcji warunkowych i nie tylko. A kiedy już nauczysz się podstaw języka VBA w programie Word, możesz zastosować większość tej samej wiedzy do tworzenia makr w programie Microsoft Excel i Access.
Aby pójść dalej, będziesz chciał dowiedzieć się więcej o konwencjach VBA i edytorze Visual Basic, na przykład o tym, jak organizować kod i jak radzić sobie z błędami. Ale nawet jeśli chcesz trzymać się prostych funkcji, takich jak te opisane tutaj, możesz przejść długą drogę w kierunku poprawy produktywności.
Jeśli regularnie korzystasz z Excela, warto nauczyć się tworzyć makra VBA i uzyskać dostęp do wielu innych funkcji i możliwości.
- Wydajność
- Microsoft Word
- Microsoft Office 365
- Microsoft Office 2016
- Porady dotyczące pakietu Microsoft Office
- Pakiet Microsoft Office 2019
- Makra
Stephen Beale jest wieloletnim autorem zajmującym się technologią, mieszkającym w rejonie San Francisco. Jest autorem wielu książek o zastosowaniach komputerowych w wydawnictwie i projektowaniu graficznym, a także byłym redaktorem wiadomości i recenzji w Macworld. Obecnie prowadzi The Steampunk Explorer, popularną stronę internetową dla miłośników steampunku.
Zapisz się do naszego newslettera
Dołącz do naszego biuletynu, aby otrzymywać wskazówki techniczne, recenzje, bezpłatne e-booki i ekskluzywne oferty!
Jeszcze jeden krok…!
Potwierdź swój adres e-mail w wiadomości e-mail, którą właśnie wysłaliśmy.