Paano Pagbukud-bukurin ang Saklaw Gamit ang VBA sa Excel (6 na Halimbawa)

  • Ibahagi Ito
Hugh West

Ang pag-alam kung paano pag-uri-uriin ang hanay gamit ang VBA sa Excel ay nakakatipid ng oras at pagsisikap sa aming pang-araw-araw na mga kalkulasyon. Bagama't ang Excel ay nagbibigay ng pasilidad sa pag-uuri bilang default. Sa pamamagitan ng paggamit ng Range.Sort paraan , nakakakuha kami ng access sa ilang parameter para pagbukud-bukurin ang isang dataset na may higit pang mga opsyon kaysa karaniwan.

I-download ang Practice Workbook

I-download ang workbook ng pagsasanay na ito upang mag-ehersisyo habang binabasa mo ang artikulong ito.

Pag-uri-uriin ang Saklaw sa Excel.xlsm

Panimula sa Range.Sorrt Statement sa Excel VBA

Layunin : Upang pag-uri-uriin ang isang hanay ng cell data.

Syntax:

expression .Pagbukud-bukurin ( Key1 , Order1 , Key2 , Uri , Order2 , Key3 , Order3 , Header , OrderCustom , MatchCase , Orientation , SortMethod , DataOption1 , DataOption2 , DataOption3 )

Dito, ang expression ay kumakatawan sa isang Range object ibig sabihin, isang cell, isang row, isang column, o isang seleksyon ng mga cell.

Mga Pangangatwiran:

Kailangan naming magbigay ng tatlong pangunahing parameter para sa Range. Sort paraan. Ang mga ito ay-

Key – Ang hanay ng mga cell mula sa isa o maramihang column na kailangan nating pag-uri-uriin.

Order – Tukuyin ang pagkakasunud-sunod ng pag-uuri pataas o pababang.

Header – Ipahayag kung may header o wala ang mga column na pag-uuri-uriin.

6 Mga Halimbawang Pag-uuri-uriin ang Saklaw sa Excel VBA

Saang artikulong ito, bilang isang dataset, gagamit kami ng listahan ng mga pangalan ng mga tao kasama ang kanilang petsa ng kapanganakan at edad. Maglalapat kami ng iba't ibang paraan para pagbukud-bukurin ang dataset. Suriin natin ang artikulo at magsanay upang makabisado ang mga pamamaraang ito.

1. Pagbukud-bukurin ang Isang Hanay na Hanay Gamit ang Excel VBA

Sa halimbawang ito, pag-uuri-uriin namin ang mga tao mula sa pinakaluma hanggang pinakabata . Sundin natin ang mga hakbang para magamit ang Range . Pagbukud-bukurin paraan na pagbubukod-bukod ang kolumna ng Edad sa pababang pagkakasunud-sunod .

Mga Hakbang:

  • Pumunta sa Tab ng Developer sa Excel Ribbon para mag-click sa Visual Basic

  • Pagkatapos ay piliin ang Module na opsyon mula sa Insert tab para magbukas ng bagong module .

Ngayon, ilalagay namin ang aming code sa pagbukud-bukurin ang hanay ng column na Edad .

1.1 Column na may Header

Ilagay ang sumusunod na code sa visual code editor.

5949

Pindutin ang F5 o i-click ang Run button upang isagawa ang ang code.

Paliwanag:

Sa code sa itaas, inilagay namin-

Expression (Range object)=Range(“D4:D11”); ang column ng edad na may header sa cell D4 at mga value sa D5:D11.

Susi = Saklaw(“D4”); ang key para sa pag-uuri.

Order= xlPababa; sa gusto naming pag-uri-uriin ang mga halaga mula sa pinakamalaking hanggang pinakamababa itinakda namin ang pag-uuri-uriin bilang pababa.

Header =xlOo; Sa sumusunod na screenshot, makikita natin na ang dataset ay may header para sa bawat isa sa mga column.

1.2 Column na walang Header

Ilagay ang sumusunod code sa visual code editor.

4440

Pindutin ang F5 o i-click ang Run button upang isagawa ang ang code.

Paliwanag:

Sa code sa itaas, inilagay namin-

Expression (Range object)=Range(“D4 :D10”); ang column ng edad nang walang header ay may mga value sa D4:D10.

Susi = Saklaw("D4"); ang key para sa pag-uuri.

Order= xlPababa; sa gusto naming pag-uri-uriin ang mga value mula sa pinakamalaking hanggang pinakamababa itinakda namin ang sunod-sunod na pag-uuri bilang pababa.

Header =xlNo; Sa sumusunod na screenshot, makikita natin na ang dataset ay walang header.

Kaugnay na Nilalaman: Paano Pagbukud-bukurin ang Mga Column sa Excel nang walang Paghahalo ng Data (3 Paraan)

2. Paggamit ng VBA Code para Pag-uri-uriin ang Maramihang Hanay ng Column sa Excel

Upang ipakita ang pag-uuri sa maraming column , kailangan naming baguhin ang aming dataset nang kaunti. Kami ay nagpasok ng ilang bagong mga hilera . Sa binagong dataset, ang mga row 7, 8, at 9 ay may mga parehong value para sa petsa ng kapanganakan at mga edad ngunit tatlong magkakaibang pangalan . Ang mga pangalan na ito ay wala sa anumang partikular na pagkakasunud-sunod ng pataas o pababa.

Sa halimbawang ito, uutusan namin ang mga pangalan sa pataas na ayos . Patakbuhin natin ang sumusunod na code sa visual basic editor:

6267

Paliwanag:

Sa itaas screenshot, makikita natin na ang mga edad sa column D ay sort sa pababang order. Nagdagdag kami ng dalawang higit pang parameter sa aming nakaraang code.

Key2: =Range(“B4”) , ang susi para pagbukud-bukurin ang mga pangalan.

Order2: =xlAscending , ang order para sa shorting names .

Bilang resulta, nakikita namin ang mga pangalan sa mga row 7, 8, at 9 ay alphabetically na inayos na ngayon sa pataas order.

Sa sumusunod na screenshot, binago namin ang value ng Order2 parameter upang pag-uri-uriin ang mga pangalan sa pababang na pagkakasunod-sunod.

Magbasa Nang Higit Pa: Paano Pagbukud-bukurin ang Maramihang Mga Column sa Excel (5 Mabilis na Diskarte)

3. I-double Click ang Header para Pagbukud-bukurin ang Hanay ng Column sa Excel VBA

Hindi pinapayagan ng default na feature sa pag-uuri ng Excel na pag-uri-uriin ang mga value ng column ayon sa double-click ang header ng column . Ngunit gamit ang VBA code ay magagawa natin ito. Ilarawan natin ang functionality na ito sa pamamagitan ng paglalapat ng sumusunod na code.

6392

Sa code na ito, ginamit namin ang BeforeDoubleClick event upang i-disable ang karaniwang double click na kung saan ay upang simulan ang pag-edit ng mode ng cell. Sa kaganapang itotumatakbo, kung kami ay double mag-click sa alinman sa column header ito ay nag-uuri ng column data sa ascending order .

Magbasa Nang Higit Pa: VBA para Pagbukud-bukurin ang Column sa Excel (4 na Paraan)

Mga Katulad na Pagbasa:

  • Paano Magdagdag ng Button ng Pag-uuri sa Excel (7 Mga Paraan)
  • Pag-uri-uriin ang Natatanging Listahan sa Excel (10 Mga Kapaki-pakinabang na Paraan)
  • Paano na Gumamit ng Sort Function sa Excel VBA (8 Angkop na Halimbawa)
  • Pag-uri-uriin ang Mga Duplicate sa Excel (Mga Column at Rows)
  • Random na Pag-uuri sa Excel ( Mga Formula + VBA)

4. Pagbukud-bukurin ang Hanay ng Column Batay sa Kulay ng Background Gamit ang Excel VBA

Maaari naming pagbukud-bukurin ang isang hanay ng mga cell sa isang column batay sa kanilang kulay ng background . Para magawa ito, kailangan nating magdagdag ng isang parameter na pinangalanang SortOn na may value xlSortOnCellColor . Upang ipakita ang pag-uuri, nagtakda muna kami ng iba't ibang kulay ng background sa mga row ng aming dataset .

Pagkatapos ay sa visual basic code editor kopyahin ang sumusunod na code at pindutin ang F5 upang patakbuhin ito.

6202

Sa sumusunod na screenshot, makikita natin ang nakaayos na dataset batay sa kanilang kulay ng background.

Paliwanag:

  • Sa halimbawang ito, pinangalanan namin ang worksheet background ”. Kaya, sa code, inilalagay namin ang " background " bilang aming pangalan ng aktibong worksheet.
  • Itinakda namin ang B4 bilang ang key at B4:D10 bilang ang saklaw . Ang code ay mag-uuri ng data batay sa key.
  • Dahil hindi namin tinukoy ang parameter ng header , tumatakbo ang code para sa default na walang header.
  • Itinakda namin ang parameter na order bilang pataas, kaya inayos nito ang data mula sa mas mababa hanggang sa mas matataas na halaga .

Magbasa Nang Higit Pa: Paano Mag-uri-uri ayon sa Kulay sa Excel (4 na Pamantayan)

5. Ilapat ang VBA Code sa Pag-uri-uriin ang Hanay ng Column Batay sa Kulay ng Font

Sa pamamagitan ng paglalapat ng VBA code, maaari naming ayusin ang aming dataset batay sa kanilang kulay ng font . Una, kailangan nating kulayan ang iba't ibang mga row upang ilarawan ang halimbawa.

Ilapat ang code sa ibaba upang pagbukud-bukurin ang dataset batay sa kulay ng font.

2968

Paliwanag:

  • Sa ito halimbawa, pinangalanan namin ang worksheet na fontcolor ”. Kaya, sa code, inilagay namin ang " fontcolor " bilang aming aktibong pangalan ng worksheet.
  • Itinakda namin ang B4 bilang ang key at B4:D11 bilang hanay . Ang code ay mag-uuri ng data batay sa key.
  • Sa halimbawang ito, tinukoy din namin ang parameter ng header bilang xlYes .
  • Dito, itinakda namin ang order parameter bilang pataas, kaya pinagbukud-bukod nito ang data mula sa mas mababa hanggang sa mas matataas na value .
  • Ang value ng SortOn parameter ay
  • Ang parameter ng oryentasyon ay nagtataglay ng value na xlTopToBottom dahil ito ay sapilitan.
  • Kulay uuriin ay nasa mga terminong RGB na may halagamula 0 hanggang 255 .

Magbasa Nang Higit Pa: Paano Pagbukud-bukurin ang Dalawang Column sa Excel upang Magtugma (Parehong Eksaktong at Bahagyang Tugma)

6. Baguhin ang Oryentasyon sa Pag-uri-uriin ang Saklaw Gamit ang Excel VBA

Gamit ang orientation parameter, maaari naming baguhin ang paraan na gusto naming pag-uri-uriin ang data. Sa halimbawang ito, na-transpose ang aming dataset sa pag-uri-uriin ito horizontal .

Ilagay natin ang sumusunod na code sa visual basic editor at pindutin ang F5 upang patakbuhin ito.

8934

Dito namin pinag-uri ang data batay sa hilera ng edad sa pataas na order mula kaliwa papunta sa kanan . Sa code, itinakda namin ang orientation parameter bilang xlSortRows .

Kaugnay na Nilalaman: Paano Auto-Uri-uriin ang Maramihang Mga Column sa Excel (3 Paraan)

Mga Dapat Tandaan

  • Ang parameter ng SortOn na ginamit namin upang pag-uri-uriin ang hanay ng column batay sa kulay ng background at kulay ng font ay magagamit lamang ng isang objek sa worksheet . Hindi namin ito magagamit sa isang range object .
  • Ang BeforeDoubleClick event ay nag-uuri ng data lamang sa papataas.

Konklusyon

Ngayon, alam na natin kung paano mag-uri-uriin ang range gamit ang VBA sa Excel. Sana, hinihikayat ka nitong gamitin ito nang may kumpiyansa. Anumang mga tanong o mungkahi ay huwag kalimutang ilagay ang mga ito sa kahon ng komento sa ibaba.

Si Hugh West ay isang napakaraming Excel trainer at analyst na may higit sa 10 taong karanasan sa industriya. May hawak siyang Bachelor's degree sa Accounting and Finance at Master's degree sa Business Administration. Si Hugh ay may hilig sa pagtuturo at nakabuo ng kakaibang diskarte sa pagtuturo na madaling sundin at maunawaan. Ang kanyang dalubhasang kaalaman sa Excel ay nakatulong sa libu-libong mag-aaral at propesyonal sa buong mundo na mapabuti ang kanilang mga kasanayan at maging mahusay sa kanilang mga karera. Sa pamamagitan ng kanyang blog, ibinahagi ni Hugh ang kanyang kaalaman sa mundo, nag-aalok ng mga libreng Excel tutorial at online na pagsasanay upang matulungan ang mga indibidwal at negosyo na maabot ang kanilang buong potensyal.