Sadržaj
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.