VBA ArrayList (exemples) | Com es crea ArrayList a Excel VBA?
A vba hem incorporat col·leccions de tipus de dades, variables de funcions i altres afirmacions importants, però de manera similar a aquesta, tenim una llista de matrius a VBA en què un usuari pot modificar i posar col·leccions pròpies de variables i funcions definides per l’usuari en una matriu. paraules clau per a la llista de matrius per dissenyar-la.
Excel VBA ArrayList
VBA ArrayList és un tipus d’estructura de dades que fem servir a VBA per emmagatzemar les dades. ArrayList a Excel VBA és una classe que s’utilitza per crear una matriu de valors. A diferència de les matrius tradicionals en què aquestes matrius tenen una longitud fixa, però la llista de matrius no té cap longitud fixa.
VAB ArrayList no forma part de la llista VBA, sinó que és una biblioteca o objecte extern al qual necessitem establir la referència abans de començar a accedir-hi.
Les matrius de VBA formen part integral de qualsevol llenguatge de codificació. En utilitzar matrius a Excel podem emmagatzemar dades amb un nom de variable únic declarant el "límit inferior i límit superior".
Amb matrius regulars, hem de decidir el límit inferior i el límit superior de la matriu que hem de decidir amb molta antelació en el moment de declarar la variable en cas de matrius estàtics i en cas de matrius dinàmics, hem de decidir la longitud de la matriu. array després de declarar el array mitjançant la instrucció "ReDim" a VBA.
No obstant això, tenim una opció més on podem emmagatzemar el nombre de valors "N" sense declarar el límit inferior i el límit superior. En aquest article, us mostrarem aquesta opció, és a dir, "VBA ArrayList"
Per establir la referència a l'objecte VBA ArrayList, seguiu els passos següents.
Pas 1: Aneu a Eines> Referències
Pas 2: La finestra de referència de la biblioteca d’objectes apareixerà davant vostre. Seleccioneu l'opció "mscorlib.dll”
Pas 3: Feu clic a D'acord també. Ara podem accedir a la VBA ArrayList.
Exemples de VBA ArrayList a Excel
A continuació es mostren els exemples d'Excel VBA ArrayList.
Podeu descarregar aquesta plantilla Excel de VBA ArrayList aquí - Plantilla Excel de VBA ArrayListExemple 1: creeu una instància de VBA ArrayList
Com que Excel VBA ArrayList és un objecte extern, hem de crear una instància per començar a utilitzar-lo. Per crear una instància, seguiu els passos següents.
Pas 1: Declareu la variable com a "ArrayList”.
Codi:
Sub ArrayList_Example1 () Dim ArrayValues As ArrayList End Sub
Pas 2: Com que Array List és un objecte, hem de crear una nova instància.
Codi:
Sub ArrayList_Example1 () Dim ArrayValues As ArrayList Set ArrayValues = Subfinestra nova llista ArrayList
Pas 3: Ara podem continuar emmagatzemant valors a la variable matriu mitjançant el mètode "Afegeix". A la imatge següent he afegit tres valors.
Codi:
Sub ArrayList_Example1 () Dim ArrayValues As ArrayList Set ArrayValues = New ArrayList ArrayValues.Add "Hello" 'First Value ArrayValues.Add "Good"' Second Value ArrayValues.Add "Morning" 'Three Value End Sub
Ara hem assignat tres valors, com identifiquem quin és el primer i com podem mostrar-los o utilitzar-los segons les nostres necessitats.
Si recordeu el tipus de matriu tradicional, fem referència al primer valor de matriu com aquest "ArrayName (0)"
De la mateixa manera, també podem utilitzar la mateixa tècnica aquí.
ArrayValue (0) = "Hola"
ArrayValue (1) = "Bona"
ArrayValue (2) = "Matí"
Mostreu-ho al quadre de missatges.
Codi:
Sub ArrayList_Example1 () Dim ArrayValues As ArrayList Set ArrayValues = New ArrayList ArrayValues.Add "Hello" 'First Value ArrayValues.Add "Good"' Second Value ArrayValues.Add "Morning" 'Three Value MsgBox ArrayValues (0) & vbNewLine & VbNewLine 1) & vbNewLine & ArrayValues (2) End Sub
Ara executeu el codi amb la tecla F5 o manualment; a continuació, veurem "Hola", "Bona" i "Matí" al quadre de missatges VBA.
Així, podem emmagatzemar qualsevol nombre de valors amb Array List Object.
Exemple 2: emmagatzemar valors a les cel·les mitjançant VBA ArrayList
Vegem l’exemple d’emmagatzematge dels valors assignats a les cel·les del full de treball. Ara mireu el següent codi VBA.
Codi:
Sub ArrayList_Example2 () Dim MobileNames As ArrayList, MobilePrice As ArrayList Dim i As Integer Dim k As Integer Set MobileNames = New ArrayList 'Noms del mòbil MobileNames.Add "Redmi" MobileNames.Add "Samsung" MobileNames.Add "Oppo" MobileNames. Afegiu "VIVO" MobileNames.Add "LG" Defineix MobilePrice = New ArrayList MobilePrice.Add 14500 MobilePrice.Add 25000 MobilePrice.Add 18500 MobilePrice.Add 17500 MobilePrice.Add 17800 End Sub
Amb dues llistes de matrius, he emmagatzemat noms del mòbil i preus del mòbil. Ara hem d’inserir aquests valors al full de càlcul per a això, hem d’utilitzar bucles. El bucle següent em farà la feina.
A continuació es mostra el codi general per emmagatzemar valors al full de càlcul.
Codi:
Sub ArrayList_Example2 () Dim MobileNames As ArrayList, MobilePrice As ArrayList Dim i As Integer Dim k As Integer Set MobileNames = New ArrayList 'Noms del mòbil MobileNames.Add "Redmi" MobileNames.Add "Samsung" MobileNames.Add "Oppo" MobileNames. Afegiu "VIVO" MobileNames.Add "LG" Defineix MobilePrice = New ArrayList MobilePrice.Add 14500 MobilePrice.Add 25000 MobilePrice.Add 18500 MobilePrice.Add 17500 MobilePrice.Add 17800 k = 0 Per a i = 1 a 5 cel·les (i, 1) .Value = MobileNames (k) Cells (i, 2) .Value = MobilePrice (k) k = k + 1 Next i End Sub
Quan executem el codi manualment o utilitzant la tecla F5, obtindrem el resultat següent.