Excel-makroer er kanskje ikke like omfattende som andre automatiseringsverktøy, men gyldigheten og effektiviteten til Excel VBA kan ikke undergraves. Hvis du jobber i Excel og andre Microsoft Office-verktøy som Word og Access, kan du ikke gå galt med VBA og dens muligheter.

MS Excel er et kraftig verktøy som tilbyr mange alternativer til sine brukere. Fra lagring av data til å lage automatiserte dashbord, kan du gjøre alt i Excel og dets regneark.

Hvis du vil bruke VBA til å automatisere sorteringsansvaret i Excel, prøv disse effektive makroene som er enkle å bruke.

Last ned et Dummy-datasett

For det første kan du laste ned et dummy-datasett for å jobbe med Excel-makroferdighetene dine.

Vær trygg, når du først har fått taket på disse makroene og bedre forstår hvordan ting fungerer, kan du endre koden slik at den passer til dine egne regneark for jobb eller skole.

Du kan laste ned datasettet som brukes i denne artikkelen hvis du vil følge med.

nedlasting: Excel-datasett

1. Sortere én kolonne ved hjelp av Excel-makroer

Bruk denne enkle koden til å sortere en datakolonne i et Excel-regneark. Hvis du lastet ned dummy-datasettet, kan du prøve å sortere kolonne E (solgte enheter).

Åpne en ny Excel-fil og lagre den med en Excel-makroaktivert arbeidsbok (.xlsm) arbeidsbok type. Denne filen vil lagre makroen for å sortere dataene dine fra en annen fil.

I slekt: Beste nettkurs for å mestre avansert Excel

Du vil kontrollere filen(e) fra makrofilen, som vil samhandle med arbeidsbøkene separat.

Skriv inn følgende kode:

Sub sortwithheaders()
Arbeidsbøker ("Financial Sample.xlsx"). Ark (1). Aktiver
Range("A1:P701").sort Key1:=Range("e1"), Order1:=xlAscending, Header:=xlYes
End Sub

Hvor:

  • Nøkkel 1: Definer kolonnen(e) du vil sortere
  • Ordre 1: Bestillingsmetode (stigende/synkende)
  • Overskrift: Hvis innholdet ditt har overskrifter, vil dette alternativet forbli som xlJa. Alternativt, velg xlNo.

Området vil bestå av startcellen og sluttcelleadressen slik at alt blir fanget opp for sorteringsformål. Resultatet er at hele datasettet ditt vil bli sortert basert på dataene i kolonne E.

2. Sortering av dynamiske data i en enkelt kolonne

Det kan være tilfeller der startpunktet ditt er definert, men endepunktet ditt er dynamisk. I et slikt tilfelle kan du gjøre koden dynamisk slik at den fanger opp slutten av området automatisk.

For å imøtekomme endringen i data, bruk koden nedenfor:

Sub sortwithheaders()
Arbeidsbøker ("Financial Sample.xlsx"). Ark (1). Aktiver
Range("A1", Range("A1").End (xlDown)).sort Key1:=Range("e2"), Order1:=xlAscending, Header:=xlYes
End Sub

Hvor:

  • Slutt (xlNed): Denne funksjonen vil automatisk velge den sist fylte cellen automatisk

Merk: Hvis formelen finner en tom celle i en kolonne, vil den betrakte den foregående cellen som slutten av området.

I slekt: Hvordan lage egendefinerte tastatursnarveier i Microsoft Excel

3. Sortere flere kolonner sammen

Det kan være situasjoner når du vil sortere data i flere kolonner på én gang. For å gjøre det kan du bruke følgende kode for å oppnå formålet ditt:

Sub SortMultipleColumns()
Med regneark ("Ark1")
Med .Cells (1, "A"). CurrentRegion
.Cells.sort Key1:=.Range("B1"), Order1:=xlAscending, _
Key2:=.Range("E1"), Order2:=xlAscending, _
Orientering:=xlTopToBottom, Header:=xlYes
Avslutt med
Avslutt med
End Sub

4. Sortering av kolonner på tvers av flere ark

Når du har å gjøre med flere ark, kan det være lurt å gjøre dataene dine klare til å settes inn i et dashbord. En av de viktigste aspektene ved dataforberedelse er å sortere dem, og få dataene ordnet i et bestemt format for å presentere for interessenter eller kunder.

Ett alternativ er å bla gjennom hvert ark manuelt, sortere de nødvendige kolonnene og deretter fortsette til neste trinn. Alternativt, hvorfor ikke la VBA gjøre det for deg?

Hensikten med koden nedenfor er å bla gjennom hvert tilgjengelige ark i arbeidsboken, og sortere de tilgjengelige dataene basert på de spesifiserte kolonnene.

I slekt: Microsoft Excel-oppslagsfunksjoner for å søke i regneark mer effektivt

Slik kan du sortere kolonner på tvers av flere ark:

Sub SortWS()
Dim ws As Worksheet
'Aktiver det tiltenkte arbeidsarket
Arbeidsbøker ("Financial Sample.xlsx"). Aktiver
'Bla gjennom hvert enkelt regneark automatisk med for loop
For hver er i ActiveWorkbook. Ark
'aktiver hvert enkelt regneark
ws. Aktiver
'Definer området og sorter deretter kolonnen basert på dine krav. I dette tilfellet er det kun én kolonne som sorteres.
Range("A1", Range("p1").End (xlDown)).sort Key1:=Range("E1"), Order1:=xlDescending, Header:=xlYes
'Kommando brukes til å gå til neste regneark når det forrige regnearket er sortert
Neste ws
End Sub

All informasjon som starter med enkle anførselstegn er VBA-kommentarer. Disse utføres ikke under utførelsesfasen. Imidlertid er hver VBA-kommentar du legger til et meningsfullt tillegg til koden, siden du kan definere essensen, funksjonaliteten og andre relevante deler i kodedelene.

5. Kopiering av sorterte data fra ett ark til et annet

Se for deg en situasjon der du vil sortere dataene og kopiere hele datasettet (eller deler av det) til et nylig lagt til ark. I slike tilfeller kan du bruke koden nedenfor for å utføre oppgaven:

Sub SortWS()
Dim ws As Worksheet
'Aktiver det tiltenkte arbeidsarket
Arbeidsbøker ("Financial Sample.xlsx"). Aktiver
'Bla gjennom hvert enkelt regneark automatisk med for loop
For hver er i ActiveWorkbook. Ark
'aktiver hvert enkelt regneark
ws. Aktiver
'Definer området og sorter deretter kolonnen basert på dine krav.
«I dette tilfellet er det bare én kolonne som er sortert.
Range("A1", Range("p1").End (xlDown)).sort Key1:=Range("E1"), Order1:=xlDescending, Header:=xlYes
'Kommando brukes til å gå til neste regneark når det forrige regnearket er sortert
Neste ws
'Opprett et nytt regneark i arbeidsboken for å lagre de nye dataene
Active Workbook. Ark. Legg til. Navn = "Resultater"
'Kopier lim inn de sorterte dataene i det nylig lagt til arket
Sheets("Sheet1").Range("A1:p701").Copy Destination:=Sheets("Resultater").Range("a1")
End Sub

Koden ovenfor vil sortere verdiene i kolonne E, legge til et nytt ark Resultater inn i den eksisterende arbeidsboken, og lim inn de sorterte resultatene i cellen A1.

Opprette sorteringsmakroer i Excel

Excel VBA er et smart språk som kan spare deg for mye tid og krefter. Ved å bruke VBA-makroer kan du lage omfattende dashbord, enkelt sortere data med noen få klikk og enkelt utføre forskjellige funksjoner.

Heldigvis slutter ikke Excels funksjonalitet med makroer. Sjekk ut noen tips og triks for å bli en mer effektiv Excel-bruker.

De 9 beste nettstedene og bloggene for å lære Excel-tips og triks

Enten du er en mester i Excel eller bare har begynt, her er de ni beste nettstedene og bloggene du kan bruke for å lære noen tips og triks.

Les Neste

DelekvitringE-post
Relaterte temaer
  • Programmering
  • Microsoft Excel
  • Makroer
Om forfatteren
Gaurav Siyal (8 artikler publisert)

Gaurav Siyal har to års skriveerfaring, og har skrevet for en rekke digitale markedsføringsfirmaer og programvarelivssyklusdokumenter.

Mer fra Gaurav Siyal

Abonner på vårt nyhetsbrev

Bli med i vårt nyhetsbrev for tekniske tips, anmeldelser, gratis e-bøker og eksklusive tilbud!

Klikk her for å abonnere