Jak automatycznie sortować arkusze i karty Excela

Jak automatycznie sortować arkusze i karty Excela

Excel to nie tylko narzędzie do przechowywania danych firmy i księgowości. Jego moc polega na tym, że służy do klasyfikowania i zarządzania prawie wszystkim w prosty i szybki sposób. Możemy tworzyć agendy, ćwiartki pracy, książki adresowe, szablony faktur, listy obecności ... Jednak Excel nie pozwala nam organizować arkuszy skoroszytów, co jest bardzo przydatne podczas pracy z długimi książkami. Ale możemy automatycznie sortować zakładki Excela za pomocą makra w kodzie Visual Basic . Wyjaśniamy, jak to zrobić krok po kroku.

Słowa „makro w kodzie Visual Basic” mogą onieśmielać, ale wszystko jest prostsze niż się wydaje. Makro to mały program, który wykonuje za nas szereg działań w Excelu i służy do automatyzacji powtarzalnych zadań . Makra są napisane w kodzie Visual Basic for Applications (lub VBA), języku programowania, który umożliwia dostęp i rozszerzanie funkcji programu Excel.

Edytor Visual Basic

Aby stworzyć nasze makro, musimy otworzyć dowolny skoroszyt w Excelu, a im więcej ma zakładek, tym lepiej.

Sortuj karty programu Excel

Aby otworzyć edytor VBA, używamy skrótu klawiaturowego Alt + F11 . Po pojawieniu się okna edytora wyszukujemy określony skoroszyt programu Excel o nazwie Personal.xls . Ten skoroszyt ma tę właściwość, że cokolwiek w nim zrobimy, wpłynie na wszystkie skoroszyty . Oznacza to, że jeśli stworzymy makro, możemy go używać w dowolnym momencie.

Edytor makr

Jeśli nie możesz znaleźć książki osobistej, nie martw się. Wyjdź z edytora, otwórz zakładkę Excel View , rozwiń menu Macros i wybierz Record Macro . Zapisz makro w Osobistej książce makr i rozpocznij nagrywanie. Następnie ponownie wyświetl menu Makra i zatrzymaj nagrywanie. Masz już swoją „specjalną” książkę.

Utwórz makro w programie Excel

Teraz mamy wszystko gotowe do stworzenia nowego modułu . Otwieramy edytor VBA za pomocą Alt + F11 , wybieramy książkę Personal.xls, a następnie klikamy Wstaw> Moduł . Umieszczamy kursor w oknie modułu i piszemy następujący kod:

Sub SortSheets_Ascendant ()

Dla a = 1 do liczby arkuszy

Dla s = a + 1 do liczby arkuszy

Jeśli UCase (Arkusze (a) .Nazwa)> UCase (Arkusze (a) .Nazwa) Następnie

Arkusze (y). Przesuń przed: = Arkusze (a)

Koniec, jeśli

Następne s

Obok

Napis końcowy

Zamykamy okno, a makro zostanie zapisane automatycznie. Pozostaje tylko sprawdzić, czy działa. Otwieramy książkę, której zakładki chcemy posortować, przechodzimy do Widok i klikamy Makra lub wciskamy skrót klawiszowy Alt + F8 . Kliknij dwukrotnie SortSheets_Ascendant , a zakładki książek zostaną natychmiast umieszczone w porządku alfabetycznym .

Sortuj alfabetycznie karty programu Excel

Gdy zamkniemy Excela, program zapyta nas, czy chcemy zapisać zmiany wprowadzone w makrach. Akceptujemy, a nasze makro zostanie zapisane do użytku z wybraną przez nas książką.

Posortuj arkusze w porządku malejącym

Dzięki kilku drobnym zmianom w kodzie możemy osiągnąć odwrotny efekt: posortuj karty w malejącej kolejności alfabetycznej . Powtarzamy proces tworzenia makra i tym razem wstawiamy następujący kod:

Sub SortSheets_Descending ()

Dla a = 1 do liczby arkuszy

Dla s = a + 1 do liczby arkuszy

Jeśli UCase (Arkusze (a) .Nazwa) <UCase (Arkusze (a) .Nazwa) Wtedy

Arkusze (y). Przesuń przed: = Arkusze (a)

Koniec, jeśli

Następne s

Obok

Napis końcowy

Istnieją tylko dwie odmiany. Pierwsza to oczywiście nazwa makra. Druga to zmiana z> na <w czwartej linii kodu. Oznacza to, że kolejność arkuszy w książce zmieni kierunek . Teraz, gdy klikniesz Widok> Makra (lub skrót Alt + F8 ), zobaczysz dwa nowo utworzone makra. Kliknij dwukrotnie SortSheets_Descending i sprawdź z satysfakcją jego efekt.

Sortuj arkusze Excela malejąco

Zapisując zmiany przy wychodzeniu z Excela, będziemy mieć te dwa makra dostępne w dowolnym momencie . Zaoszczędzą nam wiele czasu i wysiłku podczas obsługi zakładek skoroszytów programu Excel, które są szczególnie obszerne.