INHOUDSOPGAWE
Om in Excel te sorteer met VBA , moet jy die Range.Sort -metode toepas. In hierdie artikel sal ons jou wys hoe om die kolom in Excel te sorteer met die Range.Sort -metode van VBA .
Laai Werkboek af
Jy kan die gratis oefen Excel-werkboek van hier af aflaai.
Sorteer Kolom met VBA.xlsm
Range.Sort Method in Excel VBA
Range.Sort metode in VBA sorteer 'n reeks waardes in Excel. Hier is Reikwydte 'n objekveranderlike wat die reeks selle spesifiseer wat ons in stygende of dalende volgorde wil sorteer.
Hieronder is die parameters wat jy moet weet omtrent terwyl jy met hierdie metode werk.
Parameter | Vereis/ Opsioneel | Datatipe | Beskrywing |
---|---|---|---|
Sleutel | Opsioneel | Variant | Spesifiseer die reeks of die kolom waarvan die waardes gesorteer moet word. |
Bestelling | Opsioneel | XlSortorder | Spesifiseer die volgorde waarin die sortering uitgevoer sal word.
|
Opskrif | Opsioneel | XlYesNoGuess | Spesifiseer of die eerste ry opskrifte bevat of nie .
|
4 Metodes in die implementering van VBA om kolomme in Excel te sorteer
In hierdie afdeling sal jy weet hoe om 'n enkele kolom met en sonder 'n kop , veelvuldige kolomme te sorteer met en sonder opskrifte en hoe om te sorteer net deur op die kopskrif in 'n kolom in Excel te dubbelklik.
1. Sluit VBA in om 'n enkele kolom sonder kop in Excel te sorteer
As jy 'n enkele kolom in jou Excel-werkblad wil sorteer met VBA -kode, volg dan die stappe hieronder.
Dit is ons kolom wat ons sal sorteer met VBA -kode.
Stappe:
- Druk Alt + F11 op jou sleutelbord of gaan na die oortjie Ontwikkelaar -> Visual Basic om Visual Basic Editor oop te maak.
- In die opspringkodevenster, vanaf die kieslysbalk , klik Voeg in -> Module .
- Kopieer die volgende kode en plak dit in die kodevenster.
6401
Jou kode is nou gereed om te loop.
Hier,
- Key1:=Range(“B5”) → Gespesifiseerde B5 om die kode te laat weet watter kolom om te sorteer.
- Orde1:=xlAscending → Spesifiseer die volgorde as xlAscending om die kolom in stygende volgorde te sorteer. As jy die kolom in dalende volgorde wil sorteer, skryf dan eerder xlAflopend .
- Opskrif:= xlNo →Aangesien ons kolom geen opskrif het nie, daarom het ons dit gespesifiseer met die xlNo -opsie.
- Druk F5 op jou sleutelbord of van die kieslysbalk kies Run -> Begin Sub/UserForm . Jy kan ook net op die klein Speel-ikoon in die subkieslysbalk klik om die makro te laat loop.
Jy sal sien dat jou kolom is nou in stygende volgorde gesorteer.
Let op dat ons hier die datareeks handmatig gedefinieer het as Range(“B5:B15” ) .
As jy data wil verander deur waardes by te voeg of uit te vee, kan jy die volgende kode implementeer wat outomaties opdateer op grond van die selle in die datastel.
8145
Let op dat eerder om reeks handmatig te definieer deur Range(“B5:B15”) , het ons geskryf, Range( “B5”, Range(“B5”). End(xlDown)) .
Dit sal die kolom sorteer op grond van die laaste opeenvolgende gevulde sel daarin. As daar leë selle is, sal die data slegs oorweeg word tot en met die eerste leë sel.
Lees Meer: VBA om tabel in Excel te sorteer (4 metodes)
2. Voeg VBA-makro in om 'n enkele kolom met kopskrif te sorteer
In die vorige afdeling het ons 'n datastel van 'n enkele kolom sonder kopskrif gehad, maar nou het ons a kolom met 'n kopskrif .
Hierdie keer sal ons leer hoe om dit met VBA-makro te sorteer.
Stappe:
- Op dieselfde manier as voorheen, maak Visual Basic Editor oopvan die Ontwikkelaar -oortjie en Voeg 'n Module in die kodevenster in.
- Kopieer die volgende kode in die kodevenster en plak dit.
8076
Jou kode is nou gereed om te loop.
Hier,
- Key1:=Range(“ B5”) → Gespesifiseer B5 om die kode te laat weet watter kolom om te sorteer.
- Orde1:=xlAflopend → Hierdie keer sal ons die kolom sorteer in dalende volgorde het die volgorde dus gespesifiseer as xlAflopend .
- Opskrif:= xlJa → Aangesien ons kolom hierdie keer 'n kop het, so het ons dit gespesifiseer met die xlJa opsie.
- Hardloop hierdie kode en jy sal die kolom kry met kopskrif wat in dalende volgorde gesorteer is .
Lees meer: Hoe om lysboks met VBA in Excel te sorteer ('n volledige gids)
Soortgelyke lesings:
- Hoe om IP-adres in Excel te sorteer (6 metodes)
- [Opgelos!] Excel-sortering werk nie (2 oplossings)
- Hoe om sorteerknoppie in Excel by te voeg (7 metodes)
- Sorteer Rang e Gebruik VBA in Excel (6 voorbeelde)
- Hoe om volgens naam in Excel te sorteer (3 voorbeelde)
3. VBA-makro om veelvuldige kolomme met of sonder opskrif te sorteer
Jy kan ook veelvuldige kolomme in jou datastel met VBA-kode sorteer.
Stappe:
- Soos voorheen getoon, maak Visual Basic Editor oop vanaf die Ontwikkelaar -oortjie en Voeg in 'n Module in die kodevenster.
- In die kodevenster, kopieer die volgende kode en plak dit.
5536
Jou kode is nou gereed om te loop.
Hier,
.SortFields.Add Key:=Range(“B4”), Order:=xlAscending
.SortFields.Add Key:=Range(“C4 ”), Order:=xlAscending
Deur hierdie twee reëls definieer ons Sel B4 en C4 om die twee kolomme wat geassosieer word met hulle in stygende volgorde .
Aangesien ons opskrifte in ons datastel het, het ons Opskrif = xlJa gespesifiseer, anders sou ons Opskrif = geskryf het xlNo binne die kode.
- Hardloop hierdie kode en jy sal die kolomme met kopskrif in stygende volgorde gesorteer kry .
4. Makro om data te sorteer deur op kop in Excel te dubbelklik
As jy die data met gemak wil sorteer net deur te dubbelklik op die kop , kan jy dit doen met VBA kode.
Stappe:
- Regskliek op die bladoortjie .
- Uit die opsielys wat verskyn het, klik Bekyk kode .
- Die kodevenster sal verskyn, kopieer die volgende kode en plak dit daar in.
6191
- Stoor die kode.
- Gaan nou terug na die werkblad van belang en as jy dubbelklik op die opskrifte jy sal sien die kolomme herorganiseer.
Lees meer: Hoe om data in te sorteer en te filtreer Excel ('n Volledige riglyn)
Dinge om te onthou
- Jy kan 'n benoemde reeks skep en dit eerder gebruik wanneer jy 'n reeks selverwysings binne die deurgee Sorteer metode. As jy byvoorbeeld reeks A1:A10 wil sorteer, in plaas daarvan om dit elke keer binne die kode deur te gee, kan jy 'n benoemde reeks daarvan skep, soos " SortReik ” en gebruik dit met die Range.Sort -metode soos Range(“SortRange”) .
- As jy nie seker is of jou datastel opskrifte het nie of nie, jy kan die stelsel dit laat bepaal deur die xlGuess parameter te gebruik.
Gevolgtrekking
Hierdie artikel het jou gewys hoe om sorteer die kolom in Excel VBA . Ek hoop hierdie artikel was baie voordelig vir jou. Vra gerus as jy enige vrae het oor die onderwerp.