Excel er ikke kun et værktøj til opbevaring af virksomhedsdata og regnskab. Dens magt ligger i, at det bruges til at klassificere og styre næsten alt på en enkel og hurtig måde. Vi kan oprette dagsordener, arbejdskvadranter, adressebøger, fakturaskabeloner, fremmødeoptegnelser ... Imidlertid tillader Excel os ikke at organisere projektmappeark, noget meget nyttigt, når vi arbejder med lange bøger. Men vi kan sortere Excel-faner automatisk med en makro i Visual Basic-kode . Vi forklarer, hvordan man gør det trin for trin.
Ordene "makro i Visual Basic-kode" kan være skræmmende, men alt er lettere, end det lyder. En makro er et lille program, der udfører en række handlinger for os i Excel og tjener til at automatisere gentagne opgaver . Makroer er skrevet i Visual Basic for Applications (eller VBA) kode, et programmeringssprog, der giver dig mulighed for at få adgang til og udvide funktionerne i Excel.
Visual Basic-editoren
For at oprette vores makro skal vi åbne enhver projektmappe i Excel, og jo flere faner den har, jo bedre.
For at åbne VBA-editoren bruger vi tastaturgenvejen Alt + F11 . Når editorvinduet vises, søger vi efter en bestemt Excel-projektmappe, kaldet Personal.xls . Denne projektmappe har den egenskab, at uanset hvad vi gør i den, vil det påvirke alle projektmapper . Det vil sige, hvis vi opretter en makro, kan vi bruge den, når vi vil.
Hvis du ikke kan finde den personlige bog, skal du ikke bekymre dig. Afslut editoren, åbn fanen Excel View , træk menuen Makroer ned og vælg Optag makro . Gem makroen i din personlige makrobog, og start optagelsen. Så åbn menuen Makroer igen og stop optagelsen. Du har allerede din "specielle" bog.
Nu har vi alt klar til at oprette et nyt modul . Vi åbner VBA-editoren med Alt + F11 , vælger bogen Personal.xls og klikker derefter på Indsæt> Modul . Vi placerer markøren i modulvinduet og skriver følgende kode:
Under SortSheets_Ascendant ()
For a = 1 til ark. Antal
For s = a + 1 til ark. Antal
Hvis UCase (Ark (a). Navn)> UCase (Ark (er). Navn) Derefter
Ark (er). Flyt før: = Ark (a)
Afslut Hvis
Næste s
Ved siden af
Afslut sub
Vi lukker vinduet, og makroen er automatisk blevet gemt. Det er kun at kontrollere, om det fungerer. Vi åbner bogen, hvis faner vi vil bestille, vi går til Vis og klikker på Makroer , eller vi trykker på tastaturgenvejen Alt + F8 . Vi dobbeltklikker på SortSheets_Ascendant , og bogfanerne placeres i alfabetisk rækkefølge på et øjeblik .
Når vi lukker Excel, spørger programmet os, om vi vil gemme de ændringer, der er foretaget i makroerne. Vi accepterer, og vores makro gemmes til brug med den bog, vi ønsker.
Sorter arkene i faldende rækkefølge
Med et par små kodeændringer kan vi opnå den omvendte effekt: Sorter fanerne i faldende alfabetisk rækkefølge . Vi gentager processen til oprettelse af makroen, og denne gang indsætter vi følgende kode:
Sub SortSheets_Descending ()
For a = 1 til ark. Antal
For s = a + 1 til ark. Antal
Hvis UCase (Ark (a). Navn) <UCase (Ark (er). Navn) Derefter
Ark (er). Flyt før: = Ark (a)
Afslut Hvis
Næste s
Ved siden af
Afslut sub
Der er kun to variationer. Den første er selvfølgelig navnet på makroen. Den anden er ændringen fra> til <i den fjerde kodelinje. Dette betyder, at bestillingen af arkene i bogen ændrer retning . Når du nu klikker på Vis> Makroer (eller Alt + F8- genvejen ), vil du se de to nyoprettede makroer. Dobbeltklik på SortSheets_Descending , og kontroller med tilfredshed dens virkning.
Når du gemmer ændringerne, når du afslutter Excel, har vi disse to makroer tilgængelige når som helst . De sparer os meget tid og kræfter, når vi håndterer faner i Excel-projektmapper, der er særligt omfangsrige.