Kako sortirati raspon koristeći VBA u Excelu (6 primjera)

  • Podijeli Ovo
Hugh West

Znati kako sortirati raspon pomoću VBA u Excelu štedi vrijeme i trud u našim svakodnevnim proračunima. Iako Excel podrazumevano nudi mogućnost sortiranja. Koristeći Range.Sort metodu , dobijamo pristup nekoliko parametara za sortiranje skupa podataka s više opcija nego inače.

Preuzmi radnu svesku za vježbe

Preuzmite ovu radnu svesku za vježbanje dok čitate ovaj članak.

Sortiraj raspon u Excel.xlsm

Uvod u naredbu Range.Sort u programu Excel VBA

Cilj : Sortirat raspon podataka ćelije.

Sintaksa:

izraz .Sortiraj ( Ključ1 , Red1 , Ključ2 , Vrsta , Narudžba2 , Ključ3 , Naredba3 , Zaglavlje , Prilagođena narudžba , MatchCase , Orijentacija , SortMethod , DataOption1 , DataOption2 , DataOption3 )

Ovdje, izraz predstavlja objekt Raspon tj. ćeliju, red, stupac ili izbor ćelija.

Argumenti:

Moramo osigurati tri glavna parametra za Range.Sort metod. Oni su-

Ključ – Raspon ćelija iz jedne ili više kolona koje trebamo sortirati.

Red – Odredite redoslijed sortiranja ili uzlazno ili silazno.

Header – Deklarirajte da li kolone koje treba sortirati imaju zaglavlje ili ne.

6 primjera za sortiranje raspona u Excel VBA

UU ovom članku, kao skup podataka, koristit ćemo listu imena ljudi s njihovim datumom rođenja i dobi. Primijenit ćemo različite metode za sortiranje skupa podataka. Prođimo kroz članak i vježbamo kako bismo savladali ove metode.

1. Sortiraj raspon jedne kolone pomoću Excel VBA

U ovom primjeru, sortiraćemo ljude od najstariji do najmlađi . Slijedimo korake za korištenje Raspon . Sortiraj metod koji će razvrstavati Dob kolonu u silaznim redoslijedom .

Koraci:

  • Idite na karticu za programere u Excel traci da kliknite na Visual Basic

  • Zatim odaberite Modul opciju sa kartice Insert da otvorite novi modul .

Sada ćemo staviti naš kod na sortirajte raspon stupaca Starost .

1.1 Kolona sa zaglavljem

Stavite sljedeći kod u vizualni uređivač koda.

7821

Pritisnite F5 ili kliknite na dugme Pokreni da izvršite kod.

Objašnjenje:

U gornjem kodu stavljamo-

Izraz (objekat opsega)=Raspon(“D4:D11”); kolona dob sa zaglavljem u ćeliji D4 i vrijednostima u D5:D11.

Ključ = Opseg(“D4”); ključ za razvrstavanje.

Red= xlDescending; kako želimo sortirati vrijednosti od najveće do najniže postavljamo redoslijed sortiranja kao padajući.

Zaglavlje =xlYes; Na sljedećem snimku ekrana, možemo vidjeti da skup podataka ima zaglavlje za svaku od kolona.

1.2 Kolona bez zaglavlja

Stavite sljedeće koda u vizuelnom uređivaču koda.

1360

Pritisnite F5 ili kliknite na dugme Pokreni da izvršite kod.

Objašnjenje:

U gornjem kodu stavljamo-

Izraz (objekt Raspon)=Raspon(“D4 :D10”); kolona starost bez zaglavlja ima vrijednosti u D4:D10.

Ključ = Raspon(“D4”); ključ za razvrstavanje.

Red= xlDescending; kako želimo sortirati vrijednosti od najveće do najniže , postavljamo redoslijed sortiranja kao padajući.

Zaglavlje =xlNo; Na sljedećem snimku ekrana, možemo vidjeti da skup podataka nema zaglavlje.

Povezani sadržaj: Kako sortirati kolone u Excelu bez miješanja podataka (3 načina)

2. Korišćenje VBA koda za sortiranje raspona više kolona u Excelu

Da prikažemo sortiranje u više kolona , moramo modificirati naš set podataka malo. Ubacili smo nekoliko novih redova . U modificiranom skupu podataka, redovi 7, 8, i 9 imaju iste vrijednosti za datum rođenja i starost ali tri različita imena . Ova imena su nisu u bilo kom specifičnom redoslijedu uzlazno ili opadajuće.

U ovom primjeru, imena ćemo poredati u uzlaznom redu . Pokrenimo sljedeći kod u vizualnom osnovnom uređivaču:

3773

Objašnjenje:

U gornjem snimku ekrana, možemo vidjeti da su uzrasti u koloni D sortirani u padajućem redu. Dodali smo još dva parametra u našem prethodnom kodu.

Ključ2: =Raspon(“B4”) , ključ za sortiranje imena.

Red2: =xlAscending , redosled za kratka imena .

Kao rezultat, vidimo imena u redovi 7, 8 i 9 sada su po abecedi sortirani u uzlaznom redoslijedu.

U sljedećem snimku ekrana promijenili smo vrijednost parametra Order2 za razvrstavanje imena u padajućem redoslijedu.

Pročitajte više: Kako sortirati više kolona u Excelu (5 brzih pristupa)

3. Dvaput kliknite na zaglavlje da biste sortirali raspon kolona u Excel VBA

Excelova zadana funkcija sortiranja ne dozvoljava sortiranje vrijednosti stupca prema dvostruki klik na zaglavlje kolone . Ali pomoću VBA koda možemo to ostvariti. Ilustrirajmo ovu funkcionalnost primjenom sljedećeg koda.

4719

U ovom kodu smo koristili događaj BeforeDoubleClick da onemogućimo uobičajeni dvostruki klik koji treba da pokrene režim uređivanja ćelije. Sa ovim događajemradi, ako dvaput kliknemo na bilo koje od zaglavlja kolone , sortira podatke kolone u uzlaznom redu .

Pročitajte više: VBA za sortiranje kolone u Excelu (4 metode)

Slična očitanja:

  • Kako dodati dugme za sortiranje u Excel (7 metoda)
  • Sortiraj jedinstvenu listu u Excelu (10 korisnih metoda)
  • Kako za korištenje funkcije sortiranja u Excel VBA (8 odgovarajućih primjera)
  • Sortiranje duplikata u Excelu (kolone i redovi)
  • Nasumično sortiranje u Excelu ( Formule + VBA)

4. Sortiraj raspon kolona na osnovu boje pozadine pomoću Excel VBA

Možemo sortirati raspon ćelija u koloni na osnovu na njihovoj boji pozadine . Da bismo to učinili, moramo dodati parametar pod nazivom SortOn koji ima vrijednost xlSortOnCellColor . Da bismo demonstrirali sortiranje, prvo postavljamo različite boje pozadine na redove našeg skupa podataka .

Zatim u vizualnom osnovnom uređivač koda kopirajte sljedeći kod i pritisnite F5 da ga pokrenete.

5151

Na sljedećem snimku ekrana, možemo vidjeti sortirani skup podataka zasnovan na njihovoj boji pozadine.

Objašnjenje:

  • U ovom primjeru, nazvali smo radni list pozadina ”. Dakle, u kodu stavljamo “ background ” kao naš aktivni naziv radnog lista.
  • Postavljamo B4 kao ključ i B4:D10 kao opseg . Kôd će sortirati podatke na osnovu ključa.
  • Kako nismo naveli parametar zaglavlja , kod se pokreće za zadano bez zaglavlja.
  • Postavili smo parametar red kao uzlazni, tako da je sortirao podatke od nižih prema višim vrijednostima .

Pročitajte više: Kako sortirati po boji u Excelu (4 kriterija)

5. Primijenite VBA kod za sortiranje raspona kolone na osnovu boje fonta

Primjenom VBA koda možemo sortirati naš skup podataka na osnovu njihove boje fonta . Prvo, moramo obojiti različite redove da bismo ilustrirali primjer.

Primijenite kod ispod da sortirate skup podataka na osnovu boje fonta.

5366

Objašnjenje:

  • U ovom Na primjer, nazvali smo radni list fontcolor ”. Dakle, u kodu stavljamo “ fontcolor ” kao naš aktivni naziv radnog lista.
  • Postavljamo B4 kao ključ i B4:D11 kao opseg . Kod će sortirati podatke na osnovu ključa.
  • U ovom primjeru smo također specificirali parametar zaglavlja kao xlYes .
  • Ovdje postavljamo red parametar kao uzlazni, tako da je sortirao podatke od nižih prema višim vrijednostima .
  • Vrijednost SortOn parametra je
  • Parametar orijentacije zadržava vrijednost xlTopToBottom pošto je obavezna.
  • Boja za sortiranje je u RGB terminima koji ima vrijednostod 0 do 255 .

Pročitajte više: Kako sortirati dvije kolone u Excelu da se podudaraju (oba točno i djelomično podudaranje)

6. Promijenite orijentaciju u raspon sortiranja pomoću Excel VBA

Upotrebom parametra orientation , možemo promijeniti način na koji želimo sortirati podatke. U ovom primjeru, transponirali smo naš skup podataka u sortirati horizontalno .

Stavimo sljedeći kod u Visual Basic editoru i pritisnite F5 da ga pokrenete.

6808

Ovdje smo sortirali podatke na osnovu reda starosti u uzlaznom redom od lijevo do desno . U kodu smo postavili parametar orientation kao xlSortRows .

Povezani sadržaj: Kako automatski sortirati više kolona u Excelu (3 načina)

Stvari koje treba zapamtiti

  • Parametar SortOn koji smo koristili za sortiranje raspon stupaca zasnovan na boji pozadine i boji fonta može se koristiti samo od objekta radnog lista . Ne možemo ga koristiti s objektom raspona .
  • Događaj BeforeDoubleClick razvrstava podatke samo u uzlazno.

Zaključak

Sada znamo kako sortirati raspon koristeći VBA u Excelu. Nadamo se da bi vas to ohrabrilo da ovo koristite sa više samopouzdanja. Bilo kakva pitanja ili sugestije ne zaboravite ih staviti u polje za komentare ispod.

Hugh West je vrlo iskusan Excel trener i analitičar s više od 10 godina iskustva u industriji. Diplomirao je računovodstvo i finansije i magistrirao poslovnu administraciju. Hugh ima strast prema podučavanju i razvio je jedinstven pristup podučavanju koji je lako pratiti i razumjeti. Njegovo stručno znanje o Excel-u pomoglo je hiljadama studenata i profesionalaca širom svijeta da poboljšaju svoje vještine i napreduju u karijeri. Kroz svoj blog, Hugh dijeli svoje znanje sa svijetom, nudeći besplatne Excel tutorijale i online obuku kako bi pomogli pojedincima i preduzećima da ostvare svoj puni potencijal.