Hvordan sortere Excel-ark og faner automatisk

Hvordan sortere Excel-ark og faner automatisk

Excel er ikke bare et verktøy for å oppbevare bedriftsdata og regnskap. Kraften ligger i at den brukes til å klassifisere og administrere nesten hva som helst på en enkel og rask måte. Vi kan lage agendaer, arbeidskvadranter, adressebøker, fakturamaler, fremmøteposter ... Imidlertid tillater ikke Excel oss å organisere arbeidsbokark, noe som er veldig nyttig når vi jobber med lange bøker. Men vi kan sortere Excel-faner automatisk med en makro i Visual Basic-kode . Vi forklarer hvordan du gjør det trinn for trinn.

Ordene "makro i Visual Basic-kode" kan være skremmende, men alt er lettere enn det høres ut. En makro er et lite program som utfører en rekke handlinger for oss i Excel, og tjener til å automatisere repeterende oppgaver . Makroer er skrevet i Visual Basic for Applications (eller VBA) -kode, et programmeringsspråk som lar deg få tilgang til og utvide funksjonene til Excel.

Visual Basic-redaktøren

For å lage makroen vår, må vi åpne hvilken som helst arbeidsbok i Excel, og jo flere faner den har, jo bedre.

Sorter Excel-faner

For å åpne VBA-editoren bruker vi hurtigtasten Alt + F11 . Når redigeringsvinduet vises, søker vi etter en bestemt Excel-arbeidsbok, kalt Personal.xls . Denne arbeidsboken har den egenskapen at det vi gjør i den, vil påvirke alle arbeidsbøker . Det vil si at hvis vi lager en makro, kan vi bruke den når vi vil.

Makro editor

Hvis du ikke finner den personlige boken, ikke bekymre deg. Gå ut av redigeringsprogrammet, åpne Excel View- fanen , trekk ned Makro- menyen og velg Record Macro . Lagre makroen i din personlige makrobok og start opptaket. Ta deretter opp Makro- menyen igjen og stopp opptaket. Du har allerede din "spesielle" bok.

Lag makro i Excel

Nå har vi alt klart for å lage en ny modul . Vi åpner VBA-redigereren med Alt + F11 , velger Personal.xls-boken og klikker deretter Sett inn> Modul . Vi plasserer markøren i modulvinduet og skriver følgende kode:

Sub SortSheets_Ascendant ()

For a = 1 til ark. Antall

For s = a + 1 til ark. Antall

Hvis UCase (Sheets (a) .Name)> UCase (Sheets (s) .Name) Then

Ark (er). Flytt før: = Ark (a)

Slutt om

Neste s

Ved siden av

Slutt Sub

Vi lukker vinduet, og makroen vil ha blitt lagret automatisk. Det gjenstår bare å sjekke at det fungerer. Vi åpner boken hvis faner vi vil sortere, går til Vis og klikker på Makroer , eller vi trykker hurtigtasten Alt + F8 . Vi dobbeltklikker på SortSheets_Ascendant , og bokfanen vil bli plassert i alfabetisk rekkefølge på et øyeblikk .

Sorter Excel-faner alfabetisk

Når vi lukker Excel, vil programmet spørre oss om vi vil lagre endringene som er gjort i makroene. Vi godtar, og makroen vår blir lagret for bruk med boka vi ønsker.

Sorter arkene i fallende rekkefølge

Med noen få små endringer i koden kan vi oppnå den motsatte effekten: Sorter kategoriene i fallende alfabetisk rekkefølge . Vi gjentar prosessen for å lage makroen, og denne gangen setter vi inn følgende kode:

Sub SortSheets_Descending ()

For a = 1 til ark. Antall

For s = a + 1 til ark. Antall

Hvis UCase (Sheets (a) .Name) <UCase (Sheets (s) .Name) Then

Ark (er). Flytt før: = Ark (a)

Slutt om

Neste s

Ved siden av

Slutt Sub

Det er bare to varianter. Den første er selvfølgelig navnet på makroen. Den andre er endringen fra> til <i den fjerde kodelinjen. Dette betyr at bestillingen av arkene i boka vil endre retning . Nå når du klikker Vis> Makroer (eller snarveien Alt + F8 ), vil du se de to nyopprettede makroene. Dobbeltklikk på SortSheets_Descending , og sjekk med tilfredshet effekten av den.

Sorter Excel-ark synkende

Hvis du lagrer endringene når du avslutter Excel, har vi disse to makroene tilgjengelige når som helst . De vil spare oss for mye tid og krefter når vi håndterer faner med Excel-arbeidsbøker som er spesielt store.