Den tilpassede sorteringen i Excel er en veldig nyttig funksjon. I denne artikkelen vil vi snakke om hvordan du automatisk oppdaterer tilpasset sortering i et område ved å bruke Excel VBA.
Når du bruker tilpasset sortering, vil du finne at dette er en fantastisk funksjon i Excel. Men hvis du bruker denne funksjonen ofte, kan du også finne et problem. Du vil sortere i et område med visse data og informasjon. Når du legger til ytterligere data og informasjon i området, endres ikke rekkefølgen i området automatisk. Bildet nedenfor viser et eksempel på en slik tilstand.
Når du legger til et nytt datasett i området, vil det ikke endre rangeringen automatisk. Hvis du fortsatt ønsker å sortere dette større området med nye data satt etter de samme kriteriene, må du utføre prosessen med tilpasset sortering på nytt. Du kan se at dette er veldig plagsomt, spesielt når du hele tiden trenger å oppdatere data og informasjon i regnearket. Hver gang du legger til ny informasjon i utvalget, må du sortere på nytt. For å løse dette problemet og fullføre oppgaven raskt, kan du fortsette å lese denne artikkelen.
Ta opp makro
Når kriteriene for tilpasset sortering er svært komplekse, vil du finne det vanskelig å skrive VBA-kodene direkte. Dermed kan du nå først ta opp en makro. Og kodene i denne makroen kan brukes i andre makroer. Prosessen med å registrere koder er veldig enkel.
- Før du tar opp en makro, må du legge til fanen til VBA på båndet. Høyreklikk her på en av fanene på båndet.
- Og velg deretter "Tilpass båndet" i menyen.
- Nå i "Excel-alternativer"-vinduet, sjekk alternativet "Utvikler" i listen over "Hovedfaner".
- Etter det, klikk "OK" i vinduet. Derfor har du lagt til fanen i båndet.
- Nå kommer du tilbake til arbeidsarket. Klikk på fanen "Utvikler" som du har lagt til.
- Og klikk deretter på knappen "Record Macro" i verktøylinjen. Dermed vil "Record Macro"-vinduet dukke opp.
På den annen side kan du også klikke på den lille knappen nederst på regnearket for å erstatte de 6 trinnene ovenfor.
- Nå i "Record Macro"-vinduet, skriv inn navnet i den første tekstboksen. Tilordne en snarvei hvis du trenger det. Og legg deretter til beskrivelsen etter behov.
- Klikk deretter "OK". Dermed begynner makroen å registrere hver operasjon du gjør.
- Velg området du vil sortere i regnearket.
- Klikk på fanen "Hjem".
- Og klikk deretter på knappen "Sorter og filtrer" på båndet.
- I rullegardinlisten velger du alternativet "Egendefinert sortering".
- I "Sorter"-vinduet setter du kriteriene i henhold til ditt behov. Alle handlingene vil bli registrert i makroen.
Når du tar opp makro, ikke foreta flere trinn. Ellers vil disse trinnene også bli registrert. Og dette vil skape problemer i den følgende delen.
- Etter at du er ferdig med innstillingen i "Sorter"-vinduet, klikker du på "OK" for å lagre innstillingene.
- Klikk nå på fanen "Utvikler" på båndet igjen.
- Og klikk deretter på knappen "Stopp opptak". Når regnearket er i stand til å ta opp makroer, vil knappen endres til "Stopp opptak".
Du kan også klikke på knappen nederst på regnearket for å stoppe opptaket av makroen. Dermed er du ferdig med opptaket. Alle sorteringskriteriene er lagret i Macro 1.
Bruk Excel VBA-makroer
I denne delen vil vi vise deg hvordan du bruker VBA-makroer til å oppdatere tilpasset sortering i regnearket ditt. Og du vil også bruke de innspilte makroene i denne delen.
- Klikk på fanen "Utvikler" på båndet.
- Og klikk deretter på knappen "Visual Basic" i verktøylinjen. I stedet kan du også trykke på knappen "Alt + F11" på tastaturet for å erstatte de 2 trinnene.
- Dobbeltklikk på arket i "VBAProject"-området i Visual Basic-editoren. I dette arket må du oppdatere tilpasset sortering. Og i den faktiske filen din må du dobbeltklikke på det tilsvarende arket.
- Skriv nå inn følgende koder i området.
Private Sub Worksheet_Change(ByVal Tarfå som rekkevidde) End Sub
- Og skriv deretter inn følgende koder mellom de to ovennevnte VBA-setningene.
Application.ScreenUpdating = False If Not Intersect(Target, Range("A1:C13")) Is Nothing Then End If
Her er rekkevidden estimert. Det vil være 12 måneder for salgsvolumet, og sammen med den første raden i overskriften legger vi inn området "A1:C13". Du kan også legge inn området i kodene i henhold til det faktiske regnearket ditt.
- I dette trinnet åpner du modul 1 i editoren. Kodene i denne modulen er prosessen med tilpasset sortering som du tidligere har laget. Du kan se at bruk av funksjonen til å ta opp makroer kan spare deg for mye tid.
- Kopier nå hoveddelen i denne modulen.
- Og dobbeltklikk deretter på tarfå ark i "VBAProject"-delen.
- Deretter limer du inn kodene i IF-END IF-kodene.
- Og endre deretter rekkevidden i kodene i henhold til ditt behov. Den innspilte makroen er litt komplisert og overflødig. Du kan også endre den etter behov. Derfor vil de komplette VBA-kodene være slik:
Private Sub Worksheet_Change(ByVal Target As Range) Application.ScreenUpdating = False If Not Intersect(Target, Range("A1:C13")) er ingenting da med ActiveWorkbook.Worksheets("Sheet1").Sort .SortFields.Clear .SortFields.Add Key:=Range("B2:B13"), _ SortOn:=xlSortOnValues , Order:=xlDescending, DataOption:=xlSortNormal .SortFields.Add Key:=Range("C2:C13"), _ SortOn:=xlSortOnValues, Order:=xlDescending, DataOption:=xlSortNormal End With With ActiveWorksheetsbook. ").Sort .SetRange Range("A1:C1") .Header = xlYes .MatchCase = False .Orientation = xlTopToBottom .SortMethod = xlPinYin .Apply End With End If End Sub
Vi legger til en annen WITH-END WITH i kodene. Dermed blir det klarere enn rekordresultatet. Hvis du har andre krav, kan du også endre det i henhold til ditt faktiske behov. Du må være forsiktig når du endrer kodene. Ellers vil du produsere feil resultat i regnearket.
- Nå er du ferdig med VBA-kodene i editoren. Du kan gå tilbake til regnearket og teste resultatet. Når du legger til neste måned og de tilsvarende tallene i området, vil den tilpassede sorteringen automatisk oppdateres.
Derfor trenger du aldri å oppdatere den tilpassede sorteringen manuelt hver gang du legger inn nye elementer i tarfå rekkevidde. På den annen side må du lagre denne arbeidsboken som en makroaktivert Excel-fil. Ellers vil du miste kodene hvis du lagrer som en vanlig fil.
Vi vil gi hjelp til Excel-korrupsjonsofre
Vi vet alle at Excel er veldig kraftig og det kan hjelpe deg med å fullføre arbeidet raskt og enkelt. Men Excel-applikasjonen er fortsatt langt fra perfekt. Noen ganger vil Excel ødelegges på grunn av mange forskjellige årsaker. Når Excel er ødelagt, vil du ikke kunne fullføre oppgavene dine med dette programmet. For å fungere bedre, må du reparere den så snart som mulig.
Vårt firma har jobbet med gjenopprettingsområdet i mange år, spesielt Excel-gjenopprettingen. Derfor kan du henvende deg til våre tekniske staber for å få hjelp. Med mange års erfaring kan vi enkelt finne ut årsaken som forårsaker skade på filene dine. Og for å hjelpe deg bedre reparere Excel xlsx-filskade, har vi utviklet et tredjepartsverktøy. Dette verktøyet er veldig enkelt å manipulere, og du trenger ikke å bekymre deg for personvernproblemet.
Forfatterintroduksjon:
Anna Ma er en datagjenopprettingsekspert innen DataNumen, Inc., som er verdensledende innen datagjenopprettingsteknologier, inkludert reparer Word docx-feil og Outlook-reparasjonsprodukter. For mer informasjon besøk www.datanumen. Med