Rang d'ordenació VBA | Com ordenar l'interval a Excel VBA?
Rang d'ordenació VBA d'Excel
Ordenant un interval a VBA es fa mitjançant el mètode range.sort, és una propietat del mètode range amb el qual un usuari pot ordenar un rang per ordre, els arguments per a aquesta funció són Key1, Order1, Key2, Type, Order2, Key3, Order3, Header, OrderCustom, MatchCase, Orientation, SortMethod, DataOption1, DataOption2, DataOption3, tots els arguments d'aquesta funció són opcionals.
Com a part de l'organització o l'estructuració de les dades, és important ordenar-les i organitzar-les. Una cosa similar també està disponible amb VBA, de manera que la pregunta més freqüent sobre els nous estudiants de VBA és com podem fer servir aquesta opció d’ordenació com a part de l’automatització de VBA i aquest article us guia a través de la gamma d’ordenació de VBA amb detall.
Amb Excel, tots coneixem l’opció del tipus disponible a la pestanya DADES.
Opció d'ordenació a VBA
Per utilitzar l’opció d’ordenació, primer hem de decidir quin és el nostre rang de dades i esmentar el mateix rang de dades mitjançant l’objecte RANGE a VBA, després només podem accedir a l’opció “Ordenar” a VBA. Per exemple, suposem que el meu abast de dades va de A1 a D10 i, a continuació, podem proporcionar-lo de la següent manera.
Codi:
Sub Sort_Range_Example () Range ("A1: D10") End Sub
Ara poseu un punt i seleccioneu el mètode "ORDENAR".
Codi:
Sub Sort_Range_Example () Range ("A1: D10"). Ordena Sub Sub
A continuació es mostra la sintaxi del mètode d’interval SORT, tot i que la sintaxi té arguments diferents, no els necessitem tots per a la nostra codificació VBA, de manera que només necessitem uns quants elements.
[Clau1]: A l’interval de dades que estem ordenant hem d’especificar quina columna hem d’ordenar. Per exemple, a l'interval de dades A1: D10, si volem ordenar les dades segons la columna B, llavors [Clau1] serà Rang ("B1").
[Ordre1]: La columna esmentada al [Clau1] l'argument hauria d'estar ordenat en quin ordre. Aquí podem escollir dues opcions "xlAscending" o "xlDescending".
Capçalera: L'interval de dades esmentat té capçaleres o no, en cas afirmatiu podem proporcionar "xlYes" o bé podem proporcionar "xlNo".
Exemple de rang d'ordenació a VBA
Prenguem l’exemple del rang d’ordenació VBA d’excel per entendre-ho d’una manera millor.
Podeu descarregar aquesta plantilla Excel de rang d’ordenació VBA aquí: plantilla Excel de rang d’ordenació VBAPer exemple, mireu l’estructura de dades següent.
Tenim dades d’A1 a E17, de manera que primer ordenarem les dades segons “Country-wise”. Seguiu els passos següents per escriure el codi per ordenar les dades.
Pas 1: Inicieu el procediment de macro Excel.
Codi:
Sub Sort_Range_Example () End Sub
Pas 2: Primer esmenteu l’interval de dades utilitzant GAMA objecte.
Codi:
Sub Sort_Range_Example () Range ("A1: E17") End Sub
Pas 3: Ara trieu "Ordena”Mètode de l’objecte Range.
Codi:
Sub Sort_Range_Example () Range ("A1: E17"). Ordena Sub Sub
Pas 4: Atès que estem ordenant les dades en funció del nostre país Clau 1 La columna d'argument serà Range ("B1").
Codi:
Sub Sort_Range_Example () Range ("A1: E17"). Ordenar Key1: = Range ("B1"), End Sub
Pas 5: Un cop esmentada la columna necessària, hem d’esmentar en quin ordre hem d’ordenar les dades i serà “Ordre1” "XlAscending" ordre.
Codi:
Sub Sort_Range_Example () Range ("A1: E17"). Ordenar Key1: = Range ("B1"), Order1: = xlAscending, End Sub
Pas 6: Les nostres dades tenen capçaleres, de manera que serà capçalera "XlSí".
Codi:
Sub Sort_Range_Example () Range ("A1: E17"). Ordenar Key1: = Range ("B1"), Order1: = xlAscending, Header: = xlYes End Sub
Hem esmentat tots els elements necessaris per ordenar les dades. Executeu el codi prement la tecla i la funció F5 i veureu el resultat.
Sortida:
Les dades s’han ordenat en funció dels noms dels països de l’ordre de la A a la Z.
Ara suposem que hem d'ordenar les dades en funció del país, també hem d'ordenar el "Vendes Brutes”De major a menor. En aquests casos, també hem d’utilitzar arguments Key2 i Order2.
Després d’esmentar Key1 i Order1, escollim Key2.
Codi:
SubOrdenar_Rang_Exemple () Interval ("A1: E17"). Ordenar clau1: = Interval ("B1"), Ordre1: = xlAscendent, Clau2: = Finalitzar sub
Ja que estem ordenant les dades en funció delVendes Brutes”, El nom de la nostra columna Key2 serà Range (“ D1 ”).
Codi:
SubOrdenar_Rang_Exemple () Interval ("A1: E17"). Ordenar clau1: = Interval ("B1"), Ordre1: = xlAscendent, Clau2: = Interval ("D1"), Fi final
Un cop especificat el Key2, hem de decidir el patró d’ordenació de si és un ordre ascendent o descendent en l’argument Order2, ja que estem ordenant el valor de vendes del més gran al més petit, podem triar la comanda “xlDescending”.
Codi:
Sub Sort_Range_Example () Range ("A1: E17"). Ordena la clau1: = Range ("B1"), Order1: = xlAscending, Key2: = Range ("D1"), Order2: = xlDescending, Header: = xlYes End Sub
Després d'això, esmenteu l'argument de capçalera com a "xlYes". Ara executeu el codi i veureu què passa.
Sortida:
Anteriorment, s'havia ordenat basant-se només en "Country-wise", però aquesta vegada s'ha ordenat en base a "Country-wise" i després també en "Vendes brutes" de major a menor.
Així, podem utilitzar el “Ordena”Mètode a VBA per organitzar les dades.
Coses que cal recordar sobre el rang d'ordenació VBA d'Excel
- L’ordenació és un mètode disponible a VBA i per accedir a aquest mètode hem d’especificar quin és l’interval de cel·les que ordenarem.
- Si l'interval de dades inclou capçaleres, hem de triar l'opció de capçalera com a "xlYes", si no, podem escollir "xlNo".