Rozsah řazení VBA | Jak třídit rozsah v aplikaci Excel VBA?

Rozsah řazení Excel VBA

Třídění rozsahu ve VBA se provádí metodou range.sort, jedná se o vlastnost metody range, pomocí které může uživatel řadit rozsah v pořadí, argumenty pro tuto funkci jsou Key1, Order1, Key2, Type, Order2, Key3 , Order3, Header, OrderCustom, MatchCase, Orientation, SortMethod, DataOption1, DataOption2, DataOption3, všechny argumenty pro tuto funkci jsou volitelné.

Jako součást organizace dat nebo strukturování dat je důležité data seřadit a zajistit jejich organizaci. Podobná věc je k dispozici také u VBA, takže běžnou otázkou ohledně nových studentů VBA je, jak můžeme využít tuto možnost třídění jako součást automatizace VBA a tento článek vás podrobně provede řadou VBA Sort.

S aplikací Excel všichni známe možnost řazení, která je k dispozici na kartě DATA.

Možnost řazení ve VBA

Chcete-li použít možnost řazení, nejprve se musíme rozhodnout, jaký je náš rozsah dat, a zmínit stejný rozsah dat pomocí objektu RANGE ve VBA, pak pouze my můžeme přistupovat k možnosti „Řazení“ ve VBA. Předpokládejme například, že můj rozsah dat je od A1 do D10, pak můžeme rozsah dat poskytnout následujícím způsobem.

Kód:

 Sub Sort_Range_Example () Range ("A1: D10") End Sub 

Nyní vložte tečku a vyberte metodu „TŘÍDĚNÍ“.

Kód:

 Sub Sort_Range_Example () Range ("A1: D10"). Seřadit End Sub 

Níže je uvedena syntaxe metody SORT rozsahu, ačkoli syntaxe má různé argumenty, nepotřebujeme všechny pro naše kódování VBA, takže potřebujeme jen několik prvků.

[Klíč 1]: V datovém rozsahu, který řadíme, musíme určit, který sloupec musíme řadit. Například v datovém rozsahu A1: D10, pokud chceme třídit data podle sloupce B, pak [Klíč1] bude Rozsah („B1“) .

[Order1]: Uvedený sloupec v argumentu [Key1] by měl být seřazen v jakém pořadí. Můžeme zde zvolit dvě možnosti „xlAscending“ nebo „xlDescending“.

Záhlaví: Uvedený rozsah dat má záhlaví nebo ne, pokud ano, můžeme zadat „xlYes“ nebo jinak můžeme zadat „xlNo“.

Příklad rozsahu řazení ve VBA

Vezměme si příklad rozsahu řazení Excel VBA, abychom tomu lépe porozuměli.

Tuto šablonu Excel VBA Sort Range si můžete stáhnout zde - Šablona Excel VBA Range Range

Podívejte se například na níže uvedenou datovou strukturu.

Máme data od A1 do E17, takže nejdříve roztřídíme data podle „Země“. Podle níže uvedených kroků napíšete kód pro seřazení dat.

Krok 1: Spusťte proceduru makra aplikace Excel.

Kód:

 Sub Sort_Range_Example () End Sub 

Krok 2: Nejprve uveďte rozsah dat pomocí objektu RANGE .

Kód:

 Sub Sort_Range_Example () Range ("A1: E17") End Sub 

Krok 3: Nyní zvolte metodu „ Řazení “ objektu Range.

Kód:

 Sub Sort_Range_Example () Range ("A1: E17"). Seřadit End Sub 

Krok 4: Vzhledem k tomu, že data řadíme na základě „jednotlivých zemí“, bude náš sloupec argumentu Klíč 1 Rozsah („B1“).

Kód:

 Sub Sort_Range_Example () Range ("A1: E17"). Klíč řazení 1: = Range ("B1"), End Sub 

Krok 5: Jakmile je požadovaný sloupec uveden, musíme zmínit, v jakém pořadí musíme data seřadit, a „Order1“ bude „xlAscending“ .

Kód:

 Sub Sort_Range_Example () Range ("A1: E17"). Klíč řazení1: = Range ("B1"), Order1: = xlAscending, End Sub 

Krok 6: Naše data mají záhlaví, takže záhlaví bude „xlYes“.

Kód:

 Sub Sort_Range_Example () Range ("A1: E17"). Klíč řazení1: = Range ("B1"), Order1: = xlAscending, Header: = xlAno End Sub 

Zmínili jsme všechny prvky, které jsou nutné pro třídění dat. Spusťte kód stisknutím funkce a klávesy F5 a podívejte se na výsledek.

Výstup:

Data byla tříděna na základě názvů zemí v pořadí od A do Z.

Nyní předpokládejme, že musíme třídit data na základě jednotlivých zemí. Musíme také třídit „ hrubé tržby “ od nejvyšší po nejnižší. V takových případech musíme také použít argumenty Key2 a Order2.

Po zmínce Key1 & Order1, pojďme zvolit Key2.

Kód:

 Sub Sort_Range_Example () Range ("A1: E17"). Sort Key1: = Range ("B1"), Order1: = xlAscending, Key2: = End Sub 

Protože data řadíme na základě sloupce „ Hrubý prodej “, bude název našeho sloupce Key2 Range („D1“).

Kód:

 Sub Sort_Range_Example () Range ("A1: E17"). Třídění Key1: = Range ("B1"), Order1: = xlAscending, Key2: = Range ("D1"), End Sub 

Jakmile je Key2 zadán, musíme se rozhodnout, zda se jedná o vzestupné nebo sestupné pořadí v argumentu Order2, protože řazíme prodejní hodnotu od největší po nejmenší, můžeme zvolit „xlDescending“ pořadí.

Kód:

 Sub Sort_Range_Example () Range ("A1: E17"). Sort Key1: = Range ("B1"), Order1: = xlAscending, Key2: = Range ("D1"), Order2: = xlDescending, Header: = xlYes End Sub 

Poté uveďte argument záhlaví jako „xlYes“. Nyní spusťte kód a uvidíte, co se stane.

Výstup:

Dříve se třídělo pouze na základě „Země“, ale tentokrát se nejprve třídilo podle „Země“ a poté také podle „Hrubého prodeje“ od nejvyšší po nejnižší.

Takto můžeme uspořádat data pomocí metody „ Sort “ ve VBA.

Důležité informace o rozsahu řazení Excel VBA

  • Třídění je metoda dostupná ve VBA a pro přístup k této metodě musíme specifikovat, jaký rozsah buněk budeme třídit.
  • Pokud rozsah dat zahrnuje záhlaví, musíme zvolit možnost záhlaví jako „xlYes“, pokud ne, můžeme zvolit „xlNo“.

$config[zx-auto] not found$config[zx-overlay] not found