Dziesięć porad dotyczących kodowania makr Excel VBA

Dziesięć powszechnych sugestii, dzięki którym kodowanie Excel VBA będzie szybsze i łatwiejsze. Te wskazówki są oparte na programie Excel 2010 (ale działają w prawie wszystkich wersjach), a wiele z nich zostało zainspirowanych książką O'Reilly „Excel 2010 - brakujący podręcznik” Matthew MacDonald.

1 - Zawsze testuj swoje makra w testowym arkuszu kalkulacyjnym, zwykle w kopii, z którą jest przeznaczony do pracy. Cofnij nie działa z makrami, więc jeśli kodujesz makro składające się, wrzecionowate i okaleczające arkusz kalkulacyjny, nie będziesz miał szczęścia, jeśli nie zastosujesz się do tej wskazówki.

2 - Używanie klawiszy skrótów może być niebezpieczne, ponieważ program Excel nie ostrzega, jeśli wybierzesz klawisz skrótu, którego program Excel już używa. W takim przypadku program Excel używa klawisza skrótu do makra, a nie wbudowanego klawisza skrótu. Pomyśl, jak zaskoczony będzie twój szef, gdy załaduje twoje makro, a następnie Ctrl-C dodaje losowe numer do połowy komórek w arkuszu kalkulacyjnym.

instagram viewer

Matthew MacDonald przedstawia tę sugestię w „Excel 2010 - The Missing Manual”.

Oto kilka typowych kombinacji klawiszy, których nigdy nie należy przypisywać do skrótów makr, ponieważ ludzie używają ich zbyt często:

  • Ctrl + S (Zapisz)
  • Ctrl + P (druk)
  • Ctrl + O (otwarte)
  • Ctrl + N (nowy)
  • Ctrl + X (wyjście)
  • Ctrl + Z (Cofnij)
  • Ctrl + Y (Ponów / Powtórz)
  • Ctrl + C (kopiowanie)
  • Ctrl + X (Wytnij)
  • Ctrl + V (wklej)

Aby uniknąć problemów, zawsze używaj kombinacji klawiszy makr Ctrl + Shift + liter, ponieważ te kombinacje są znacznie mniej powszechne niż klawisze skrótu Ctrl + litera. A jeśli masz wątpliwości, nie przypisuj klawisza skrótu podczas tworzenia nowego, nieprzetestowanego makra.

3 - Nie pamiętasz Alt-F8 (domyślny skrót makra)? Czy imiona nic dla ciebie nie znaczą? Ponieważ program Excel udostępni makra w dowolnym otwartym skoroszycie dla każdego innego skoroszytu, który jest obecnie otwarty, najłatwiejszym sposobem jest zbudowanie własnej biblioteki makr ze wszystkimi makrami w osobnym zeszyt ćwiczeń. Otwórz ten skoroszyt wraz z innymi arkuszami kalkulacyjnymi. Jak to ujął Matthew: „Wyobraź sobie, że edytujesz skoroszyt o nazwie SalesReport.xlsx i otwierasz inny skoroszyt o nazwie MyMacroCollection.xlsm, który zawiera kilka przydatnych makr. Możesz używać makr zawartych w MyMacroCollection.xlsm z SalesReport.xlsx bez żadnych problemów. ” Matthew mówi, że ten projekt ułatwia udostępnianie i ponowne wykorzystywanie makr w różnych skoroszytach (i między różnymi ludzie).

4 - Zastanów się nad dodaniem przycisków do linków do makr w arkuszu zawierającym bibliotekę makr. Możesz rozmieścić przyciski w dowolnych grupach funkcjonalnych, które mają dla ciebie sens i dodać tekst do arkusza roboczego, aby wyjaśnić, co robią. Nigdy nie będziesz się zastanawiać, co tak naprawdę robi makro o kryptycznie nazwanej nazwie.

5 - Nowa architektura zabezpieczeń makr Microsoft została znacznie ulepszona, ale jeszcze wygodniej jest powiedzieć programowi Excel, aby ufał plikom w niektórych folderach na komputerze (lub na innych komputerach). Wybierz określony folder na dysku twardym jako zaufaną lokalizację. Jeśli otworzysz skoroszyt przechowywany w tej lokalizacji, jest on automatycznie zaufany.

6 - Podczas kodowania makra nie próbuj budować zaznaczenia komórki w makrze. Zamiast tego załóżmy, że komórki, których będzie używać makro, zostały wstępnie wybrane. Przeciągnij myszką nad komórkami, aby je wybrać. Kodowanie makra wystarczająco elastycznego, aby zrobić to samo, prawdopodobnie będzie pełne błędów i trudne do zaprogramowania. Jeśli chcesz coś zaprogramować, spróbuj dowiedzieć się, jak napisać kod weryfikacyjny, aby sprawdzić, czy w makrze dokonano odpowiedniego wyboru.

7 - Może się wydawać, że program Excel uruchamia makro względem skoroszytu zawierającego kod makra, ale nie zawsze tak jest. Program Excel uruchamia makro w aktywny skoroszyt. To jest skoroszyt, na który ostatnio patrzyłeś. Jak wyjaśnia Matthew: „Jeśli masz otwarte dwa skoroszyty i przełączasz się na pasek zadań systemu Windows drugi skoroszyt, a następnie z powrotem do edytora Visual Basic, Excel uruchamia makro na drugim zeszyt ćwiczeń."

8 - Matthew sugeruje, że „W celu łatwiejszego kodowania makr spróbuj zaaranżować swoje okna, aby zobaczyć okno Excela i Visual Podstawowe okno edytora jednocześnie, obok siebie. „Ale Excel tego nie zrobi (Rozmieść wszystko w menu Widok tylko porządkuje Skoroszyty. Visual Basic jest uważany przez Excel za inne okno aplikacji.) Ale Windows tak. W systemie Vista zamknij wszystkie oprócz dwóch, które chcesz ustawić, i kliknij prawym przyciskiem myszy pasek zadań; wybierz „Pokaż Windows obok siebie”. W systemie Windows 7 użyj funkcji „Snap”. (Wyszukaj w Internecie „Snap systemu Windows 7”).

9 - Najważniejsza wskazówka Matthew: „Wielu programistów uważa, że ​​długie spacery po plaży lub wypijanie dzbanka Mountain Dew to pomocny sposób na oczyszczenie głowy”.

I oczywiście matka wszystkich wskazówek VBA:

10 - Pierwszą rzeczą, którą należy wypróbować, gdy nie możesz wymyślić instrukcji lub słów kluczowych potrzebnych w kodzie programu, jest włączenie rejestrator makr i wykonaj wiele operacji, które wydają się podobne. Następnie sprawdź wygenerowany kod. Nie zawsze wskaże ci właściwą rzecz, ale często tak jest. Przynajmniej da ci miejsce, w którym możesz zacząć szukać.

Źródło

MacDonald, Matthew. „Excel 2010: brakujący podręcznik”. 1 wydanie, O'Reilly Media, 4 lipca 2010 r.