Inhoudsopgave
De handleiding laat zien hoe u Excel-werkbladen snel in alfabetische volgorde kunt sorteren met behulp van VBA-code en de tool Werkmapbeheer.
Microsoft Excel biedt een aantal snelle en eenvoudige manieren om kolommen of rijen in alfabetische volgorde te rangschikken. Maar er is slechts één methode om werkbladen in Excel te herschikken - ze naar de gewenste positie op de tabbladenbalk slepen. Als het gaat om het alfabetiseren van tabbladen in een echt grote werkmap, kan dit een lange en verkeerde manier zijn. Op zoek naar een tijdbesparend alternatief? Er bestaan er slechts twee: VBA-codeof hulpmiddelen van derden.
Tabbladen alfabetiseren in Excel met VBA
Hieronder vindt u drie VBA-codevoorbeelden om Excel-sheets oplopend, aflopend en in beide richtingen te sorteren op basis van de keuze van de gebruiker.
Ervan uitgaande dat u enige ervaring hebt met VBA, schetsen wij alleen de basisstappen om een macro aan uw werkblad toe te voegen:
- Druk in uw Excel-werkmap op Alt + F11 om de Visual Basic Editor te openen.
- Klik in het linkerdeelvenster met de rechtermuisknop op DitWerkboek en klik dan op Plaats > Module .
- Plak de VBA-code in het venster Code.
- Druk op F5 om de macro uit te voeren.
Voor de gedetailleerde stapsgewijze instructies, zie Hoe VBA-code in te voegen en uit te voeren in Excel.
Tip: Als u de macro wilt bewaren voor verder gebruik, moet u uw bestand opslaan als een werkmap voor Excel-macro's (.xlsm).
U kunt ook onze voorbeeldwerkmap Alfabetiseren van Excel-tabbladen downloaden, de inhoud inschakelen als daarom wordt gevraagd, en de gewenste macro rechtstreeks van daaruit uitvoeren. De werkmap bevat de volgende macro's:
- TabsAscending - alfabetisch sorteren van A tot Z.
- TabsDescending - Rangschik de bladen in omgekeerde volgorde, van Z naar A.
- AlfabetiseerTabs - Bladtabs in beide richtingen sorteren, oplopend of aflopend.
Terwijl de voorbeeldwerkmap is gedownload en geopend in uw Excel, opent u uw eigen werkmap waarin u de tabbladen wilt alfabetiseren, drukt u op Alt + F8 , selecteert u de gewenste macro en klikt u op Ren .
Excel-tabbladen alfabetisch sorteren van A tot Z
Deze kleine macro rangschikt de bladen in de huidige werkmap in oplopende alfanumerieke volgorde , eerst werkbladen waarvan de namen beginnen met cijfers, dan bladen van A tot Z.
Sub TabsAscending() For i = 1 To Application.Sheets.Count For j = 1 To Application.Sheets.Count - 1 If UCase$(Application.Sheets(j).Name)> UCase$(Application.Sheets(j + 1).Name) Then Sheets(j).Move after:=Sheets(j + 1) End If Next Next MsgBox "The tabs have been sorted from A to Z." End SubExcel-tabbladen ordenen van Z naar A
Als u uw bladen wilt sorteren in aflopende alfanumerieke volgorde (Z tot A, dan bladen met numerieke namen), gebruik dan de volgende code:
Sub TabsDescending() Voor i = 1 tot Application.Sheets.Count Voor j = 1 tot Application.Sheets.Count - 1 Als UCase$(Application.Sheets(j).Name) <UCase$(Application.Sheets(j + 1).Name) Dan Application.Sheets(j).Move after:=Application.Sheets(j + 1) End If Next Volgende MsgBox "De tabbladen zijn gesorteerd van Z naar A." End SubAlfabetiseer tabs oplopend of aflopend
Met deze macro kunnen uw gebruikers bepalen hoe de werkbladen in een bepaalde werkmap worden gesorteerd, alfabetisch van A tot Z of in omgekeerde volgorde.
Aangezien het standaard dialoogvenster (MsgBox) in Excel VBA slechts de keuze biedt uit een handvol voorgedefinieerde knoppen, maken we ons eigen formulier (UserForm) met drie aangepaste knoppen: A tot Z , Z naar A en Annuleren .
Open hiervoor de Visual Basic Editor, klik met de rechtermuisknop op DitWerkboek en klik Plaats > UserForm naam van uw formulier SortOrderFrom en voeg er 4 besturingselementen aan toe: een label en drie knoppen:
Druk vervolgens op F7 (of dubbelklik op het formulier) om de Code De code onderschept knopklikken en wijst een unieke tag toe aan elke knop:
Privé Sub CommandButton1_Click() Me.Tag = 1 Me.Hide End Sub Privé Sub CommandButton2_Click() Me.Tag = 2 Me.Hide End Sub Privé Sub CommandButton3_Click() Me.Tag = 0 Me.Hide End SubAfhankelijk van of de gebruiker op de A tot Z of Z naar A knop op uw formulier, sorteer tabbladen in oplopende alfabetische volgorde (standaard geselecteerd) of aflopende alfabetische volgorde; of sluit het formulier en doe niets in geval van Annuleren Dit gebeurt met de volgende VBA-code, die u op de gebruikelijke manier invoegt via Plaats > Module .
Sub AlphabetizeTabs() Dim SortOrder As Integer SortOrder = showUserForm If SortOrder = 0 Then Exit Sub For x = 1 To Application.Sheets.Count For y = 1 To Application.Sheets.Count - 1 If SortOrder = 1 Then If UCase$(Application.Sheets(y).Name)> UCase$(Application.Sheets(y + 1).Name) Then Sheets(y).Move after:=Sheets(y + 1) End If If SortOrder = 2 Then If UCase$(Application.Sheets(y).Name)<UCase$(Application.Sheets(y + 1).Name) Dan Sheets(y).Move after:=Sheets(y + 1) End If End If Next Next End Sub Functie showUserForm() As Integer showUserForm = 0 Load SortOrderForm SortOrderForm.Show (1) showUserForm = SortOrderForm.Tag Unload SortOrderForm End FunctionAls u nog niet zo vertrouwd bent met VBA, kunt u gewoon onze voorbeeldwerkmap om tabbladen te alfabetiseren downloaden, deze in uw Excel openen naast uw eigen bestand waarin u tabbladen wilt sorteren, en het programma AlfabetiseerTabs macro van je werkmap:
Kies de gewenste sorteervolgorde, bijvoorbeeld, A tot Z en observeer de resultaten:
Tip: Met VBA kunt u ook kopieën maken van uw Excel-werkbladen. De code is hier beschikbaar: Hoe dupliceer ik een blad in Excel met VBA.
Hoe Excel tabbladen alfabetisch sorteren met Ultimate Suite
De gebruikers van onze Ultimate Suite voor Excel hoeven niet te rommelen met VBA - zij beschikken over een multifunctionele Workbook Manager:
Met deze tool toegevoegd aan uw Excel-lint wordt het alfabetiseren van tabbladen gedaan met een enkele klik op de knop, precies zoals het hoort!
Als u benieuwd bent naar deze en meer dan 70 professionele tools voor Excel, kunt u hier een proefversie van onze Ultimate Suite downloaden.
Ik dank u voor het lezen en hoop u volgende week op onze blog te zien!