Jeśli skoroszyt zawiera makro języka Visual Basic for Applications (VBA), które ma być używane w innym miejscu, moduł zawierający to makro można skopiować do innego otwartego skoroszytu za pomocą Edytora Visual Basic (VBE, Visual Basic Editor).
Uwaga
W programie Excel 2021 i nowszych makra są domyślnie wyłączone ze względów bezpieczeństwa. W programie Excel może być konieczna zmiana ustawień bezpieczeństwa makr przed rozpoczęciem ich uruchamiania.
Narzędzia makr i języka VBA można znaleźć na karcie Deweloper . Ta karta jest domyślnie ukryta, więc pierwszym krokiem jest jej włączenie.
- W systemie Windows przejdź do pozycjiOpcje> pliku >Dostosowywanie Wstążki.
- Na komputerze Mac przejdź dopreferencjiprogramu Excel>...>Wstążka & pasku narzędzi.
- Następnie w sekcji Dostosowywanie Wstążki w obszarze Karty główne zaznacz pole wyboru Deweloper .
Omówienie makr i języka VBA
Jeśli nie masz wiedzy na temat makr ani języka VBA, poniższe informacje mogą ułatwić Ci rozpoczęcie pracy.
Makro jest akcją lub zestawem akcji, które umożliwiają automatyzację zadań.
Aby rejestrować makra, użyj polecenia Zarejestruj makro na karcie Deweloper .
Makra są rejestrowane w języku programowania VBA.
Makra można sprawdzać i edytować w Edytorze Visual Basic, oknie otwieranym przez program Excel. Oto przykładowe okno VBE dla systemu Windows:
Makra o nazwach MakeCellGreen i SetRowHeight znajdują się w module o nazwie Moduł1, który jest przechowywany w skoroszycie Skoroszyt1.
Aby zachować makra podczas zapisywania skoroszytu, użyj formatu pliku z obsługą makr, takiego jak xlsm lub xlsb. W plikach .xlsx standardowych makra nie są zapisywane.
Kopiowanie modułu z jednego skoroszytu do innego
Otwórz skoroszyt zawierający makro, które chcesz skopiować, oraz skoroszyt docelowy (z włączonymi makrami).
Na karcie Deweloper wybierz pozycję Visual Basic , aby otworzyć Edytor Visual Basic.
W Edytorze Visual Basic w menu Widok wybierz
lub naciśnij klawisze Ctrl+R.W okienku Eksplorator projektu przeciągnij moduł zawierający makro, które chcesz skopiować, do skoroszytu docelowego. W tym przypadku kopiujesz Moduł1 z Skoroszyt2.xlsm do Skoroszyt1.xlsm.
- Moduł 1 skopiowano z pliku Skoroszyt2.xlsm
- Skopiowano kopię Modułu1 do pliku Skoroszyt1.xlsm
Uwaga
- Jeśli makra są wyłączone, skopiowany moduł pojawi się w skoroszycie docelowym, ale nie będzie uruchamiany do czasu włączenia makr.
- W środowiskach zarządzanych zasady IT mogą uniemożliwiać uruchamianie makr lub funkcji języka VBA.
- Uprawnienia, ustawienia zabezpieczeń lub zablokowana zawartość makra mogą uniemożliwiać kopiowanie modułów między skoroszytami.
Potrzebujesz dodatkowej pomocy?
Zawsze możesz zadać pytanie ekspertowi w społeczności technicznej programu Excel lub uzyskać pomoc techniczną w społecznościach.