
Gabriel Brooks
0
1969
79
Excel na Macu nie zawsze był tym samym potęgą, co na Windowsie. Makra naprawdę nie działałyby, gdyby nie zostały stworzone wyłącznie dla komputerów Mac.
Począwszy od 2013 r. Microsoft przywrócił makra. Istnieją dwa rodzaje makr: te, które możesz utworzyć poprzez szybkie nagrywanie swoich działań, oraz te, które używają VBA do projektowania bardziej zaawansowanych automatyzacji. W pakiecie Office 2016 program Excel używa tej samej bazy kodów na wszystkich platformach. Ta zmiana ułatwi makrom pracę na różnych platformach.
Rzućmy więc okiem na to, jak obecnie działa to w systemie macOS.
Włączanie makr w programie Excel na komputerze Mac
Praca z makrami w programie Excel na komputerze Mac może być domyślnie wyłączona. To ustawienie jest spowodowane tym, że makra mogą być możliwym wektorem złośliwego oprogramowania. Najłatwiejszym sposobem na sprawdzenie jest sprawdzenie, czy masz Deweloper karta dostępna na wstążce w programie Excel. Jeśli go nie widzisz, możesz go łatwo włączyć.
Kliknij Przewyższać na pasku menu, a następnie wybierz Preferencje w menu rozwijanym. W menu kliknij Wstążka i pasek narzędzi. Na liście po prawej stronie, Deweloper powinien znajdować się na dole, kliknij pole wyboru. Na koniec kliknij Zapisać i na końcu wstążki powinna pojawić się karta Deweloper.
Po utworzeniu każdego skoroszytu z makrami zapisz go w nowym formacie .xlsm aby użyć makr po ponownym otwarciu pliku. W przypadku zapomnienia program Excel będzie przypominał za każdym razem, gdy spróbujesz zapisać. Musisz także włączyć makra przy każdym otwarciu pliku.
Ręczne rejestrowanie makra w programie Excel na komputerze Mac
Chociaż możesz kodować makra, może nie być to odpowiednie dla wszystkich. Jeśli nie jesteś gotowy, aby rozpocząć pracę z VBA, Excel pozwala zapisać kroki dla twojego makra w istniejącym arkuszu. Kliknij kartę Deweloper, aby zobaczyć dostępne opcje.
Szukasz trzeciej opcji na Wstążce, Record Macro. Kliknij to, a pojawi się okno dialogowe, w którym możesz nazwać makro i ustawić skrót klawiaturowy. Możesz zawęzić swoje makro do Aktualny skoroszyt, za Nowy skoroszyt, lub w twoim Osobisty skoroszyt makr. Osobisty skoroszyt makr znajduje się w Twoim profilu użytkownika i pozwala używać makr między plikami.
Po zarejestrowaniu działań są one dostępne na tej samej karcie. Kliknięcie makra spowoduje wyświetlenie zapisanych makr w skoroszycie. Kliknij nazwę makra i kliknij Biegać aby uruchomić zarejestrowane działania.
Przykład 1: Całkowita dzienna sprzedaż i średnia godzinna
Na przykład makra będziesz przeglądać dzienny arkusz sprzedaży, przy czym sprzedaż podzielona jest na godziny. Twoje makro doda dzienną sumę sprzedaży, a następnie doda średnią w ostatniej kolumnie każdego okresu godzinowego. Jeśli pracujesz na stanowisku handlowym lub innym stanowisku sprzedaży, jest to pomocny arkusz do śledzenia przychodów.
Musimy skonfigurować pierwszy arkusz. Używanie tego pierwszego pustego miejsca jako szablonu do codziennego kopiowania do nowej karty może zaoszczędzić trochę czasu. W pierwszej kolumnie / wierszu umieść godzinę / datę. Na górze dodaj od poniedziałku do piątku.
Następnie w pierwszej kolumnie umieść zestawienie godzinnych sum z 8-5. Użyłem 24-godzinnego czasu, ale jeśli wolisz, możesz użyć notacji AM / PM. Twój arkusz powinien pasować do powyższego zrzutu ekranu.
Dodaj nową kartę i skopiuj do niej szablon. Następnie wprowadź dane dotyczące sprzedaży na dany dzień. (Jeśli nie masz danych do wypełnienia tego arkusza, możesz wprowadzić = RandBetween (10,1000) we wszystkich komórkach, aby utworzyć fikcyjne dane.) Następnie kliknij Deweloper na wstążce.
Następnie kliknij Record Macro. W oknie dialogowym wprowadź nazwę jako AverageandSum i zostaw to w pamięci Ten skoroszyt. Jeśli chcesz, możesz ustawić klawisz skrótu. Możesz wprowadzić opis, jeśli potrzebujesz więcej szczegółów na temat działania makra. Kliknij przycisk OK, aby rozpocząć konfigurowanie makra.
Na dole wpisu godzinowego wpisz Daily Totals. W komórce obok wprowadź = SUMA (B2: B10). Następnie skopiuj i wklej to do pozostałych kolumn. Następnie w nagłówku dodaj Średni po ostatniej kolumnie. Następnie w następnej komórce w dół wprowadź = Średnia (B2: F2). Następnie wklej to do komórek w pozostałej części kolumny.
Następnie kliknij Zatrzymaj nagrywanie. Twoje makro może teraz używać na każdym nowym arkuszu dodanym do skoroszytu. Gdy będziesz mieć kolejny arkusz danych, wróć do Deweloper i kliknij Makra. Twoje makro powinno być podświetlone, kliknij Uruchom, aby dodać swoje sumy i średnie.
Ten przykład pozwala zaoszczędzić kilka kroków, ale w przypadku bardziej złożonych działań, które mogą się sumować. Jeśli wykonujesz te same operacje na danych z identycznym formatowaniem, użyj zarejestrowanych makr.
Makra VBA w programie Excel na komputerze Mac
Ręcznie rejestrowane makra w programie Excel pomagają w danych, które są zawsze tego samego rozmiaru i kształtu. Jest to również przydatne, jeśli chcesz wykonywać działania na całym arkuszu. Możesz użyć swojego makra, aby udowodnić problem.
Dodaj kolejną godzinę i dzień do arkusza i uruchom makro. Zobaczysz, że makro zastępuje twoje nowe dane. Poradzimy sobie z tym za pomocą kodu, aby uczynić makro bardziej dynamicznym za pomocą VBA, która jest uproszczoną wersją Visual Basic. Wdrożenie koncentruje się na automatyzacji pakietu Office.
To nie jest tak łatwe do znalezienia jak Applescript Co to jest AppleScript? Pisanie pierwszego skryptu automatyzacji komputerów Mac Co to jest AppleScript? Pisanie pierwszego skryptu automatyzacji komputerów Mac AppleScript może pomóc w automatyzacji powtarzalnych zadań na komputerze Mac. Oto przegląd i sposób napisania pierwszego skryptu AppleScript. , ale automatyzacja pakietu Office jest całkowicie oparta na języku Visual Basic. Więc kiedy już tu będziesz pracować, możesz szybko się odwrócić i używać go w innych aplikacjach pakietu Office. (Może to być również bardzo pomocne, jeśli utkniesz z komputerem z systemem Windows w pracy).
Podczas pracy z VBA w programie Excel masz osobne okno. Powyższy zrzut ekranu to nasze zarejestrowane makro, które pojawia się w edytorze kodu. Tryb okienkowy może być pomocny podczas zabawy z kodem podczas nauki. Po rozłączeniu makra dostępne są narzędzia do debugowania, które pozwalają sprawdzić stan zmiennych i danych arkusza.
Pakiet Office 2016 jest teraz wyposażony w pełny edytor Visual Basic. Umożliwia korzystanie z Przeglądarki obiektów i narzędzi do debugowania, które wcześniej były ograniczone do wersji Windows. Możesz uzyskać dostęp do przeglądarki obiektów, przechodząc do Widok> Przeglądarka obiektów lub po prostu naciśnij Shift + Command + B. Następnie możesz przejrzeć wszystkie dostępne klasy, metody i właściwości. Bardzo pomocne było skonstruowanie kodu w następnej sekcji.
Przykład 2: Całkowita dzienna sprzedaż i średnia godzinna z kodem
Zanim zaczniesz kodować makro, zacznijmy od dodania przycisku do szablonu. Ten krok znacznie ułatwia początkującym użytkownikom dostęp do Twojego makra. Mogą kliknąć przycisk, aby wywołać makro, zamiast zagłębiać się w karty i menu.
Wróć do pustego arkusza szablonu utworzonego w ostatnim kroku. Kliknij Deweloper aby wrócić do karty. Gdy znajdziesz się na karcie, kliknij Przycisk. Następnie kliknij gdzieś w arkuszu szablonu, aby umieścić przycisk. Pojawi się menu makr, nazwij swoje makro i kliknij Nowy.
Otworzy się okno Visual Basic; zobaczysz to jako Moduł 2 w przeglądarce projektu. Okienko kodu będzie mieć Sub AverageandSumButton () u góry i kilka linii w dół Napis końcowy. Kod musi przechodzić między tymi dwoma, ponieważ jest to początek i koniec makra.
Krok 1: Deklarowanie zmiennych
Aby rozpocząć, musisz zadeklarować wszystkie swoje zmienne. Są w poniższym bloku kodu, ale uwaga na temat ich budowy. Powinieneś zadeklarować wszystkie zmienne za pomocą Ciemny przed imieniem, a potem tak jak z typem danych.
Sub AverageandSumButton () Dim RowPlaceHolder Jako Integer Dim ColumnPlaceHolder Jako Integer Dim StringHolder As String Dim WszystkieCells As Range Dim TargetCells As Range Dim AverageTarget As Range Dim SumTarget As Range
Teraz, gdy masz już wszystkie swoje zmienne, musisz od razu użyć niektórych zmiennych zakresu. Zakresy to obiekty, które przechowują sekcje arkusza jako adresy. Zmienna Wszystkie komórki zostanie ustawiony na wszystkie aktywne komórki w arkuszu, które zawierają etykiety kolumn i wierszy. Dostajesz to, dzwoniąc na numer Aktywny arkusz obiekt, a potem to UsedRange własność.
Problem polega na tym, że nie chcesz, aby etykiety były uwzględniane w danych średnich i sumach. Zamiast tego użyjesz podzbioru z zakresu AllCells. Będzie to zakres TargetCells. Ręcznie podajesz jego zasięg. Jego początkowym adresem będzie komórka w drugim rzędzie w drugiej kolumnie zakresu.
Nazywasz to dzwoniąc do AllCells zasięg, używając jego Komórki klasa, aby uzyskać tę konkretną komórkę za pomocą (2,2). Aby uzyskać ostatnią komórkę w zasięgu, nadal będziesz dzwonić AllCells. Tym razem za pomocą SpecialCells metoda uzyskania właściwości xlCellTypeLastCell. Oba możesz zobaczyć w poniższym bloku kodu.
Ustaw AllCells = ActiveSheet.UsedRange Ustaw TargetCells = Zakres (AllCells.Cells (2, 2), AllCells.SpecialCells (xlCellTypeLastCell))
Krok 2: Dla każdej pętli
Następne dwie sekcje kodu są dla każdego Absolutne podstawy programowania dla początkujących (część 2) Absolutne podstawy programowania dla początkujących (część 2) W części 2 naszego absolutnego początkującego przewodnika po programowaniu omówię podstawy funkcje, zwracane wartości, pętle i warunki warunkowe. Upewnij się, że przeczytałeś część 1 przed rozwiązaniem tego problemu, w którym wyjaśniłem… pętle. Pętle te przechodzą przez obiekt i działają na każdy jego podzbiór. W takim przypadku wykonujesz dwa z nich, po jednym dla każdego wiersza i jeden dla każdej kolumny. Ponieważ są prawie dokładnie takie same, istnieje tylko jeden z nich; ale oba są w bloku kodu. Szczegóły są praktycznie identyczne.
Przed uruchomieniem pętli dla każdego wiersza należy ustawić kolumnę docelową, w której pętla zapisuje średnią każdego wiersza. Korzystasz z ColumnPlaceHolder zmienna, aby ustawić ten cel. Ustawiasz go na równy Liczyć zmienna Komórki klasa AllCells. Dodaj jeden, aby przenieść go na prawo od swoich danych, dołączając +1.
Następnie rozpoczniesz pętlę za pomocą Dla każdego. W takim przypadku chcesz utworzyć zmienną dla podzestawu, subRow. Po W, ustawiamy główny obiekt, który analizujemy Komórki docelowe. Dodać .Wydziwianie na końcu, aby ograniczyć pętlę tylko do każdego wiersza, zamiast do każdej komórki w zakresie.
Wewnątrz pętli używasz metody ActiveSheet.Cells, aby ustawić określony cel na arkuszu. Współrzędne są ustawiane za pomocą subRow.Row aby uzyskać wiersz, w którym aktualnie znajduje się pętla. Następnie użyj ColumnPlaceHolder dla drugiej współrzędnej.
Używasz tego we wszystkich trzech krokach. Pierwszy dołączasz .wartość po nawiasach i ustaw na równość WorksheetFunction.Average (subRow). Spowoduje to zapisanie formuły średniej wiersza do komórki docelowej. Następna dołączona linia .Styl i ustaw to na równe “Waluta”. Ten krok odpowiada reszcie arkusza. W ostatniej linii dołączasz .Pogrubiona czcionka i ustaw to na równe Prawdziwe. (Uwaga: nie ma tutaj cudzysłowów, ponieważ jest to wartość boolowska). Ten wiersz pogrubia czcionkę, aby wyróżnić informacje podsumowujące od reszty arkusza.
Oba kroki znajdują się w poniższym przykładzie kodu. Druga pętla zamienia wiersze dla kolumn i zmienia formułę na Suma. Ta metoda wiąże obliczenia z formatem bieżącego arkusza. W przeciwnym razie jest powiązany z rozmiarem w momencie rejestrowania makra. Kiedy więc pracujesz więcej dni lub godzin, funkcja rośnie wraz z Twoimi danymi.
ColumnPlaceHolder = AllCells.Columns.Count + 1 For Each subRow In TargetCells.Rows ActiveSheet.Cells (subRow.Row, ColumnPlaceHolder) .Value = WorksheetFunction.Average (subRow) ActiveSheet.Cells (subRow.Row, ColumnPlaceSolder). „ActiveSheet.Cells (subRow.Row, ColumnPlaceHolder) .Font.Bold = True Następny subRow RowPlaceHolder = AllCells.Rows.Count + 1 dla każdej podkolumny w TargetCells.Columns ActiveSheet.Cells (RowPlaceHolder, subColumn.Column) Funkcja. Suma (subColumn) ActiveSheet.Cells (RowPlaceHolder, subColumn.Column) .Style = "Waluta" ActiveSheet.Cells (RowPlaceHolder, subColumn.Column) .Font.Bold = "True" Następna podkolumna
Krok 3: Oznacz swoje streszczenia
Następnie oznacz nowy wiersz i kolumnę, ustaw RowPlaceHolder i ColumnPlaceHolder jeszcze raz. Pierwsze użycie AllCells.Row aby uzyskać pierwszy wiersz z zakresu, a następnie AllCells.Column + 1 aby uzyskać ostatnią kolumnę. Następnie użyjesz tej samej metody co pętla, aby ustawić wartość na “Średnia sprzedaż”. Użyjesz tego samego .Pogrubiona czcionka właściwość, aby pogrubić nową etykietę.
Następnie odwróć, ustawiając symbole zastępcze na pierwszą kolumnę i ostatni wiersz do dodania “Całkowita sprzedaż”. Ty też chcesz to odważnie.
Oba kroki znajdują się w bloku kodu poniżej. To koniec makra zanotowanego przez Napis końcowy. Powinieneś teraz mieć całe makro i móc kliknąć przycisk, aby go uruchomić. Możesz wkleić wszystkie te bloki kodu w kolejności w arkuszu programu Excel, jeśli chcesz oszukiwać, ale gdzie jest w tym zabawa?
ColumnPlaceHolder = AllCells.Columns.Count + 1 RowPlaceHolder = AllCells.Row ActiveSheet.Cells (RowPlaceHolder, ColumnPlaceHolder) .Value = „Średnia sprzedaż” ActiveSheet.Cells (RowPlaceHolder, ColumnPlaceHolder) TrueLumnPolumnBolder ColumnBolder. AllCells.Rows.Count + 1 ActiveSheet.Cells (RowPlaceHolder, ColumnPlaceHolder) .Value = „Total Sales” ActiveSheet.Cells (RowPlaceHolder, ColumnPlaceHolder) .Font.Bold = True End Sub
Co dalej w przypadku makr w programie Excel na komputerze Mac?
Nagrane makra świetnie nadają się do przewidywalnego powtarzania. Nawet jeśli jest to coś tak prostego, jak zmiana rozmiaru wszystkich komórek i pogrubienie nagłówków, mogą one zaoszczędzić czas.
Visual Basic otwiera drzwi dla użytkowników Mac Excela, aby zagłębić się w automatyzację pakietu Office. Visual Basic był tradycyjnie dostępny tylko w systemie Windows. Umożliwia makrom dynamiczne dostosowywanie się do danych, dzięki czemu są bardziej wszechstronne. Jeśli masz cierpliwość, może to być brama do bardziej zaawansowanego programowania.
Chcesz więcej trików z arkusza kalkulacyjnego oszczędzających czas? Dowiedz się, jak automatycznie wyróżniać określone dane za pomocą formatowania warunkowego w programie Excel. Automatyczne formatowanie danych w arkuszach kalkulacyjnych Excel. Formatowanie warunkowe. Automatyczne formatowanie danych w arkuszach kalkulacyjnych Excel. Formatowanie warunkowe. Funkcja formatowania warunkowego Excela umożliwia formatowanie poszczególnych komórek w arkuszu kalkulacyjnym Excel na podstawie ich wartości. Pokażemy Ci, jak używać tego do różnych codziennych zadań. i warunkowe wyróżnianie w Numbers na Macu Jak korzystać z formatowania warunkowego w Numbers na Macu Jak korzystać z formatowania warunkowego w Numbers na Macu Formatowanie warunkowe wyróżnia Twoje arkusze kalkulacyjne. Oto jak korzystać z formatowania warunkowego w aplikacji Numbers na komputerze Mac. .