Распон сортирања ВБА | Како сортирати опсег у програму Екцел ВБА?

Екцел ВБА опсег сортирања

Сортирање опсега у ВБА врши се методом ранге.сорт, својство је методе ранге помоћу које корисник може сортирати опсег редом, аргументи за ову функцију су Кеи1, Ордер1, Кеи2, Типе, Ордер2, Кеи3, Ордер3, Хеадер, ОрдерЦустом, МатцхЦасе, Ориентатион, СортМетход, ДатаОптион1, ДатаОптион2, ДатаОптион3, сви аргументи за ову функцију нису обавезни.

Као део организовања података или структурирања података, важно је сортирати податке и учинити их организованим. Слична ствар је доступна и са ВБА, тако да је уобичајено питање о новим ученицима ВБА како можемо да користимо ову могућност сортирања као део ВБА аутоматизације, а овај чланак вас детаљно води кроз распон ВБА сортирања.

Са Екцелом смо сви упознати са опцијом сортирања која је доступна на картици ДАТА.

Опција сортирања у ВБА

Да бисмо користили опцију сортирања, прво морамо одлучити који је наш опсег података и споменути исти опсег података помоћу објекта РАНГЕ у ВБА, а затим само ми можемо приступити опцији „Сорт“ у ВБА. На пример, претпоставимо да је мој опсег података од А1 до Д10, онда опсег података можемо пружити на следећи начин.

Шифра:

 Суб Сорт_Ранге_Екампле () Опсег ("А1: Д10") Крај Суб 

Сада ставите тачку и одаберите методу „СОРТ“.

Шифра:

 Суб Сорт_Ранге_Екампле () опсег ("А1: Д10"). Сортирај крај Суб 

Испод је синтакса СОРТ методе опсега, иако синтакса има различите аргументе, нису нам потребни сви за наше ВБА кодирање, тако да нам треба само неколико елемената.

[Кеи1]: У опсегу података који сортирамо треба да одредимо коју колону треба да сортирамо. На пример, у опсегу података А1: Д10 ако тада желимо сортирати податке на основу колоне Б. [Кеи1] биће Домет („Б1“).

[Наруџба1]: Поменута колона у [Кеи1] аргумент треба сортирати по редоследу. Овде можемо изабрати две опције „клАсцендинг“ или „клДесцендинг“.

Заглавље: Споменути опсег података има заглавља или не, ако је одговор да, можемо да наведемо „клИес“ или „клНо“.

Пример опсега сортирања у ВБА

Узмимо пример екцел распона сортирања ВБА да бисмо ово боље разумели.

Овде можете преузети овај ВБА образац сортирања распона сортирања Екцел - ВБА шаблон сортирања распона сортирања

На пример, погледајте доњу структуру података.

Имамо податке од А1 до Е17, па ћемо прво сортирати податке на основу „По земљи“. Следите кораке у наставку да бисте написали код за сортирање података.

Корак 1: Започните процедуру екцел макро.

Шифра:

 Суб Сорт_Ранге_Екампле () Крај Суб 

Корак 2: Прво спомените опсег података помоћу ДОМЕТ објект.

Шифра:

 Суб Сорт_Ранге_Екампле () Опсег ("А1: Е17") Крај Суб 

Корак 3: Сада одаберите „Врста”Метода објекта Ранге.

Шифра:

 Суб Сорт_Ранге_Екампле () опсег ("А1: Е17"). Сортирај крај Суб 

Корак 4: Будући да податке сортирамо на основу података „По земљи“ Кључ 1 аргумент ступац ће бити опсег („Б1“).

Шифра:

 Суб Сорт_Ранге_Екампле () опсег ("А1: Е17"). Кључ за сортирање1: = опсег ("Б1"), крај суб 

Корак 5: Једном када се наведе потребна колона, морамо напоменути којим редоследом треба да сортирамо податке и биће „Ордер1“ „КслАсцендинг“ ред.

Шифра:

 Суб Сорт_Ранге_Екампле () опсег ("А1: Е17"). Кључ за сортирање1: = опсег ("Б1"), редослед1: = клАсцендинг, Крај Суб 

Корак 6: Наши подаци имају заглавља, па ће и заглавље бити „КслИес“.

Шифра:

 Суб Сорт_Ранге_Екампле () опсег ("А1: Е17"). Кључ за сортирање1: = опсег ("Б1"), редослед1: = клАсцендинг, заглавље: = клДа Заврши Суб 

Споменули смо све елементе који су потребни за сортирање података. Извршите код притиском на тастер Ф5 и тастер и погледајте резултат.

Излаз:

Подаци су сортирани на основу имена држава по редоследу од А до З.

Сада претпоставимо да податке морамо сортирати на основу земље, такође морамо сортирати „Бруто продаје”Од највишег до најнижег. У таквим случајевима морамо да користимо и аргументе Кеи2 и Ордер2.

Након спомена Кеи1 и Ордер1, изаберемо Кеи2.

Шифра:

 Суб Сорт_Ранге_Екампле () опсег ("А1: Е17"). Кључ за сортирање1: = опсег ("Б1"), редослед1: = клАсцендинг, Кеи2: = Енд Суб 

Пошто податке сортирамо на основу „Бруто продаје”, Назив нашег ступца Кеи2 биће Ранге („ Д1 “).

Шифра:

 Суб Сорт_Ранге_Екампле () опсег ("А1: Е17"). Кључ за сортирање1: = опсег ("Б1"), редослед1: = клАсцендинг, кључ2: = опсег ("Д1"), крајњи суб 

Једном када је Кеи2 наведен, морамо одлучити о узорку сортирања да ли је у узлазном или силазном редоследу у аргументу Ордер2, јер сортирамо продајну вредност од највеће до најмање, можемо одабрати „клДесцендинг” поруџбину.

Шифра:

 Суб Сорт_Ранге_Екампле () опсег ("А1: Е17"). Кључ за сортирање1: = опсег ("Б1"), редослед1: = клАсцендинг, Кеи2: = опсег ("Д1"), редослед2: = клДесцендинг, заглавље: = клДа Заврши Суб 

Након тога спомените аргумент заглавља као „клИес“. Сада покрените код и погледајте шта ће се догодити.

Излаз:

Раније је сортирано само на основу „Земље“, али овог пута сортирано је на основу „Земље“, а затим и на „Бруто продаји“ од највише до најниже.

Овако, можемо да користимо „Врста”Метода у ВБА за организовање података.

Ствари које треба запамтити о опсегу сортирања у програму Екцел ВБА

  • Сортирање је метода доступна у ВБА и за приступ овој методи морамо да одредимо који ће опсег ћелија сортирати.
  • Ако опсег података укључује заглавља, онда треба да изаберемо опцију заглавља као „клИес“, ако не, можемо одабрати „клНо“.