Używaj makr w programie Excel na Macu, aby zaoszczędzić czas i zrobić więcej

Używaj makr w programie Excel na Macu, aby zaoszczędzić czas i zrobić więcej

Excel na Maca nie zawsze był tą samą potęgą, co w systemie Windows. 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 tworzyć, szybko rejestrując swoje działania, oraz te, które używają VBA do projektowania bardziej zaawansowanych automatyzacji. W pakiecie Office 2016 program Excel używa ta sama baza kodu na wszystkich platformach . Ta zmiana ułatwi działanie makr na różnych platformach.





Przyjrzyjmy się więc, jak to obecnie działa na macOS.





najlepsze gry kulinarne na świecie

Włączanie makr w Excelu na Macu

Praca z makrami w programie Excel na komputerze Mac może nie być domyślnie włączona. To ustawienie jest spowodowane tym, że makra mogą być potencjalnym wektorem złośliwego oprogramowania . Najłatwiej stwierdzić, czy masz Deweloper karta dostępna na Wstążce w programie Excel. Jeśli go nie widzisz, włączenie jest proste.

Kliknij Przewyższać na pasku menu, a następnie wybierz Preferencje w menu. 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 powinieneś zobaczyć kartę Deweloper na końcu Wstążki.



Po utworzeniu każdego skoroszytu z makrami zapisz go w nowym formacie .xlsm aby użyć makr po ponownym otwarciu pliku. Jeśli zapomnisz, Excel przypomni Ci za każdym razem, gdy spróbujesz zapisać. Będziesz także musiał włączać makra za każdym razem, gdy otwierasz plik.

Ręczne nagrywanie makra w programie Excel na komputerze Mac

Chociaż możesz kodować makra , to może nie być dla wszystkich. Jeśli nie jesteś gotowy do rozpoczęcia pracy z VBA, program Excel umożliwia rejestrowanie kroków dla makra w istniejącym arkuszu. Kliknij kartę Deweloper, aby zobaczyć opcje.





Szukasz trzeciej opcji na Wstążce, Nagraj makro . Kliknij to, a pojawi się okno dialogowe umożliwiające nazwanie makra i ustawienie skrótu klawiaturowego. Możesz ograniczyć swoje makro do Bieżący skoroszyt , do Nowy skoroszyt lub w twoim Skoroszyt makr osobistych . Skoroszyt makr osobistych znajduje się w profilu użytkownika i umożliwia używanie makr między plikami.

Po zarejestrowaniu swoich działań są one dostępne na tej samej karcie. Kliknięcie makr spowoduje wyświetlenie zapisanych makr w skoroszycie. Kliknij swoją nazwę makra i kliknij Biegać aby uruchomić zarejestrowane działania.





Przykład 1: Całkowita dzienna sprzedaż i średnia godzinowa

W przypadku przykładowego makra prześledzisz dzienny arkusz sprzedaży z podziałem sprzedaży na sumy godzinowe. Twoje makro doda sumę dziennej sprzedaży, a następnie doda średnią w ostatniej kolumnie każdego okresu godzinowego. Jeśli pracujesz w handlu detalicznym lub innym stanowisku sprzedaży, ten arkusz jest pomocny w śledzeniu przychodów.

Musimy ustawić pierwszy arkusz. Używanie tego pierwszego pustego miejsca jako szablonu do kopiowania do nowej karty każdego dnia może zaoszczędzić trochę czasu. W pierwszej kolumnie/wierszu wpisz godzinę/datę. Na górze dodaj od poniedziałku do piątku.

Następnie w pierwszej kolumnie podaj rozbicie sum godzinowych od 8-5. Użyłem czasu 24-godzinnego, 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 swój szablon. Następnie wypełnij dane sprzedaży na dany dzień. (Jeśli nie masz danych do wypełnienia tego arkusza, możesz wejść = RandMiędzy (10.1000) we wszystkich komórkach, aby utworzyć dane fikcyjne). Następnie kliknij Deweloper na Wstążce.

Następnie kliknij Nagraj makro . W oknie dialogowym wpisz nazwę jako Średnia i suma i pozostaw to przechowywane w 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 OK, aby rozpocząć konfigurowanie makra.

Na dole listy godzinowej wpisz Sumy dzienne . W komórce obok wpisz =SUMA(B2:B10) . Następnie skopiuj i wklej to do pozostałych kolumn. Następnie w nagłówku dodaj Przeciętny po ostatniej kolumnie. Następnie w następnej komórce poniżej wpisz =Ś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 być używane w każdym nowym arkuszu dodanym do skoroszytu. Po uzyskaniu kolejnego arkusza danych wróć do Deweloper i kliknij Makra . Twoje makro powinno być podświetlone, kliknij uruchom, aby dodać swoje sumy i średnie.

Ten przykład może zaoszczędzić kilka kroków, ale w przypadku bardziej złożonych działań, które można sumować. Jeśli wykonujesz te same operacje na danych o identycznym formatowaniu, użyj nagranych makr.

Makra VBA w Excelu na Macu

Ręcznie rejestrowane makra w programie Excel pomagają w przypadku danych, które mają zawsze ten sam rozmiar i kształt. Przydaje się również, jeśli chcesz wykonywać akcje 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. Sposób, w jaki możemy to obejść, polega na użyciu kodu, aby uczynić makro bardziej dynamicznym za pomocą VBA, co jest odchudzona wersja Visual Basic . Wdrożenie skupia się na automatyzacji dla pakietu Office.

To nie jest tak łatwe do odebrania jako Applescript , ale automatyzacja pakietu Office jest całkowicie oparta na języku Visual Basic. Dzięki temu, gdy już z nim pracujesz, możesz szybko odwrócić się i używać go w innych aplikacjach pakietu Office. (Może to być również duża pomoc, jeśli utkniesz w pracy z komputerem z systemem Windows).

Podczas pracy z VBA w Excelu masz osobne okno. Powyższy zrzut ekranu to nasze zarejestrowane makro, które pojawia się w edytorze kodu. Tryb okienkowy może być pomocny w zabawie z kodem podczas nauki. Gdy makro się zawiesza, dostępne są narzędzia do debugowania umożliwiające sprawdzenie stanu 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 były ograniczone do wersji Windows. Dostęp do przeglądarki obiektów można uzyskać, przechodząc do Widok > Przeglądarka obiektów lub po prostu naciśnij Shift + Polecenie + B . Następnie możesz przeglądać wszystkie dostępne klasy, metody i właściwości. Było to bardzo pomocne w konstruowaniu kodu w następnej sekcji.

Przykład 2: Całkowita dzienna sprzedaż i średnia godzinowa z kodem

Zanim zaczniesz kodować swoje makro, zacznijmy od dodania przycisku do szablonu. Ten krok znacznie ułatwia początkującemu użytkownikowi 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 zakładki. Gdy znajdziesz się na karcie, kliknij Przycisk . Następnie kliknij gdzieś w arkuszu na szablonie, aby umieścić przycisk. Pojawi się menu makr, nazwij swoje makro i kliknij Nowy .

Otworzy się okno Visual Basic; zobaczysz to na liście jako Moduł2 w przeglądarce projektu. Panel kodu będzie miał Sub AverageandSumButton() u góry i kilka linii w dół Napis końcowy . Twój kod musi przejść między tymi dwoma, ponieważ jest to początek i koniec twojego makra.

Krok 1: deklarowanie zmiennych

Aby rozpocząć, musisz zadeklarować wszystkie swoje zmienne . Znajdują się one w poniższym bloku kodu, ale uwaga na temat ich konstrukcji. Powinieneś zadeklarować wszystkie zmienne za pomocą Nic przed imieniem, a następnie jak z typem danych.

Sub AverageandSumButton()
Dim RowPlaceHolder As Integer
Dim ColumnPlaceHolder As Integer
Dim StringHolder As String
Dim AllCells As Range
Dim TargetCells As Range
Dim AverageTarget As Range
Dim SumTarget As Range

Teraz, gdy masz już wszystkie zmienne, musisz od razu użyć niektórych zmiennych zakresu. Zakresy to obiekty, które przechowują sekcje arkusza jako adresy. Zmienna Wszystkie komórki zostaną ustawione na wszystkie aktywne komórki w arkuszu, w tym etykiety kolumn i wierszy. Otrzymasz to, dzwoniąc do Aktywny arkusz obiekt, a potem jest Używany zakres własność.

Problem polega na tym, że nie chcesz, aby etykiety były uwzględniane w danych średnich i sum. Zamiast tego użyjesz podzbioru zakresu AllCells. Będzie to zakres TargetCells. Ręcznie deklarujesz jego zakres. Jego adresem początkowym będzie komórka w drugim wierszu w drugiej kolumnie zakresu.

Nazywasz to, dzwoniąc do swojego WszystkieKomórki zasięg, używając jego Komórki klasa, aby uzyskać tę konkretną komórkę za pomocą (2.2) . Aby uzyskać ostatnią komórkę z zakresu, nadal będziesz dzwonić WszystkieKomórki . Tym razem przy użyciu Komórki specjalne sposób na zdobycie nieruchomości xlTypKomórkiOstatniaKomórka . Możesz zobaczyć oba te w bloku kodu poniżej.

Set AllCells = ActiveSheet.UsedRange
Set TargetCells = Range(AllCells.Cells(2, 2), AllCells.SpecialCells(xlCellTypeLastCell))

Krok 2: Dla każdej pętli

Kolejne dwie sekcje kodu to pętle For Each. Te pętle przechodzą przez obiekt, aby działać na każdym podzbiorze tego obiektu. W tym przypadku robisz dwa z nich, po jednym dla każdego wiersza i po jednym dla każdej kolumny. Ponieważ są prawie takie same, tylko jeden z nich jest tutaj; ale oba są w bloku kodu. Szczegóły są praktycznie identyczne.

Zanim zaczniesz pętlę dla każdego wiersza, musisz ustawić kolumnę docelową, w której pętla zapisuje średnią każdego wiersza. Używasz KolumnaMiejsce Holder zmienna, aby ustawić ten cel. Ustawiasz to na Liczyć zmienna Komórki klasa WszystkieKomórki . Dodaj jeden do niego, aby przenieść go na prawo od swoich danych, dołączając +1 .

Następnie zaczniesz pętlę za pomocą Dla każdego . Następnie chcesz utworzyć zmienną dla podzbioru, w tym przypadku podwiersz . 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, a nie do każdej komórki w zakresie.

Wewnątrz pętli używasz metody ActiveSheet.Cells, aby ustawić określony cel w arkuszu. Współrzędne ustawia się za pomocą podwiersz.wiersz aby uzyskać wiersz, w którym aktualnie znajduje się pętla. Następnie użyj KolumnaMiejsce Holder dla drugiej współrzędnej.

Używasz tego do wszystkich trzech kroków. Pierwszy, który dołączysz .wartość po nawiasach i ustawić na WorksheetFunction.Average(subRow) . To zapisuje formułę dla średniej wiersza w komórce docelowej. Następna linia, którą dodasz .Styl i ustaw to na 'Waluta' . Ten krok pasuje do reszty arkusza. W ostatniej linii dołączasz .Pogrubiona czcionka i ustaw go na Prawdziwe . (Zauważ, że wokół tego nie ma cudzysłowów, ponieważ jest to wartość logiczna.) Ta linia pogrubia czcionkę, aby informacje podsumowujące wyróżniały się na tle reszty arkusza.

Oba kroki znajdują się w poniższym przykładzie kodu. Druga pętla zamienia wiersze na kolumny i zmienia formułę na Suma . Użycie tej metody wiąże twoje obliczenia z formatem bieżącego arkusza. W przeciwnym razie jest powiązany z rozmiarem w momencie rejestrowania makra. Jeśli więc pracujesz więcej dni lub godzin, funkcja rośnie wraz z Twoimi danymi.

co mogę usunąć z Windows 10
ColumnPlaceHolder = AllCells.Columns.Count + 1
For Each subRow In TargetCells.Rows
ActiveSheet.Cells(subRow.Row, ColumnPlaceHolder).Value = WorksheetFunction.Average(subRow)
ActiveSheet.Cells(subRow.Row, ColumnPlaceHolder).Style = 'Currency'
ActiveSheet.Cells(subRow.Row, ColumnPlaceHolder).Font.Bold = True
Next subRow
RowPlaceHolder = AllCells.Rows.Count + 1
For Each subColumn In TargetCells.Columns
ActiveSheet.Cells(RowPlaceHolder, subColumn.Column).Value = WorksheetFunction.Sum(subColumn)
ActiveSheet.Cells(RowPlaceHolder, subColumn.Column).Style = 'Currency'
ActiveSheet.Cells(RowPlaceHolder, subColumn.Column).Font.Bold = 'True'
Next subColumn

Krok 3: Oznacz swoje streszczenia

Następnie oznacz nowy wiersz i kolumnę, ustaw WierszMiejsceHolder oraz KolumnaMiejsce Holder ponownie. Pierwsze użycie AllCells.Row aby uzyskać pierwszy wiersz z zakresu, a następnie Kolumna WszystkieKomórki+1 aby uzyskać ostatnią kolumnę. Następnie użyjesz tej samej metody co pętla, aby ustawić wartość na „Średnia sprzedaż” . Ty też użyjesz tego samego .Pogrubiona czcionka właściwość, aby pogrubić nową etykietę.

Następnie odwróć to, ustawiając swoje symbole zastępcze w pierwszej kolumnie i ostatnim wierszu do dodania 'Całkowita sprzedaż' . To również chcesz pogrubić.

Oba kroki znajdują się w poniższym bloku kodu. To już koniec makra, które zauważył Napis końcowy . Powinieneś teraz mieć całe makro i móc kliknąć przycisk, aby je uruchomić. Możesz wkleić wszystkie te bloki kodu do arkusza Excela, jeśli chcesz oszukiwać, ale gdzie jest w tym zabawa?

ColumnPlaceHolder = AllCells.Columns.Count + 1
RowPlaceHolder = AllCells.Row
ActiveSheet.Cells(RowPlaceHolder, ColumnPlaceHolder).Value = 'Average Sales'
ActiveSheet.Cells(RowPlaceHolder, ColumnPlaceHolder).Font.Bold = True
ColumnPlaceHolder = AllCells.Column
RowPlaceHolder = AllCells.Rows.Count + 1
ActiveSheet.Cells(RowPlaceHolder, ColumnPlaceHolder).Value = 'Total Sales'
ActiveSheet.Cells(RowPlaceHolder, ColumnPlaceHolder).Font.Bold = True
End Sub

Co dalej z makrami w programie Excel na komputerze Mac?

Nagrane makra doskonale nadają się do przewidywalnego powtórzenia. Nawet jeśli jest to coś tak prostego, jak zmiana rozmiaru wszystkich komórek i pogrubienie nagłówków, może to zaoszczędzić czas. Właśnie unikaj typowych błędów makro .

Visual Basic otwiera drzwi użytkownikom programu Mac Excel do zagłębienia się w automatyzację pakietu Office. Visual Basic był tradycyjnie dostępny tylko w systemie Windows. Pozwala makram na dynamiczne dostosowywanie się do danych, dzięki czemu są bardziej wszechstronne. Jeśli masz cierpliwość, może to być droga do bardziej zaawansowanego programowania.

Chcesz więcej sztuczek z arkuszami kalkulacyjnymi, które oszczędzają czas? Dowiedz się, jak automatycznie wyróżniać określone dane za pomocą formatowania warunkowego w programie Excel i warunkowego wyróżniania w Numbers na komputerze Mac.

Udział Udział Ćwierkać E-mail 3 sposoby na sprawdzenie, czy wiadomość e-mail jest prawdziwa czy fałszywa

Jeśli otrzymałeś wiadomość e-mail, która wygląda nieco podejrzanie, zawsze najlepiej sprawdzić jej autentyczność. Oto trzy sposoby sprawdzenia, czy wiadomość e-mail jest prawdziwa.

Czytaj dalej
Powiązane tematy
  • Prochowiec
  • Wydajność
  • Programowanie
  • Programowanie Visual Basic
  • Microsoft Excel
O autorze Michael McConnell(44 opublikowane artykuły)

Michael nie używał Maca, kiedy byli skazani, ale potrafi kodować w Applescript. Posiada stopnie naukowe z informatyki i języka angielskiego; od jakiegoś czasu pisze o Macu, iOS i grach wideo; i od ponad dekady zajmuje się informatyką w ciągu dnia, specjalizując się w skryptach i wirtualizacji.

Więcej od Michaela McConnella

Zapisz się do naszego newslettera

Dołącz do naszego newslettera, aby otrzymywać porady techniczne, recenzje, bezpłatne e-booki i ekskluzywne oferty!

Kliknij tutaj, aby zasubskrybować