VBA ArrayList

In vba abbiamo integrato raccolte di tipi di dati, variabili di funzioni e altre istruzioni importanti, ma in modo simile a questo abbiamo un elenco di array in VBA in cui un utente può modificare e inserire le proprie raccolte di variabili e funzioni definite dall'utente in un array, ci sono alcune parole chiave per l'elenco di array per progettarlo.

Elenco di array VBA di Excel

VBA ArrayList è un tipo di struttura dati che utilizziamo in VBA per memorizzare i dati. ArrayList in Excel VBA è una classe utilizzata per creare un array di valori. Questo a differenza degli array tradizionali in cui questi array hanno una lunghezza fissa ma Array List non ha una lunghezza fissa.

VAB ArrayList non fa parte dell'elenco VBA piuttosto è una libreria o un oggetto esterno di cui abbiamo bisogno per impostare il riferimento prima di iniziare ad accedervi.

Gli array in VBA sono parte integrante di qualsiasi linguaggio di codifica. Utilizzando gli array in Excel possiamo memorizzare i dati con un unico nome di variabile dichiarando il "limite inferiore e limite superiore".

Con array regolari, dobbiamo decidere il limite inferiore e il limite superiore dell'array, dobbiamo decidere con largo anticipo al momento di dichiarare la variabile in caso di array statici e in caso di array dinamici dobbiamo decidere la lunghezza del array dopo aver dichiarato l'array utilizzando l'istruzione "ReDim" in VBA.

Tuttavia, abbiamo un'altra opzione in cui possiamo memorizzare il numero "N" di valori senza dichiarare il limite inferiore e il limite superiore. In questo articolo, ti mostreremo questa opzione, ovvero "VBA ArrayList"

Per impostare il riferimento all'oggetto VBA ArrayList seguire i passaggi seguenti.

Passaggio 1: vai su Strumenti> Riferimenti

Passaggio 2: la finestra di riferimento della libreria di oggetti apparirà di fronte a te. Seleziona l'opzione " mscorlib.dll "

Passaggio 3: fare clic anche su OK. Ora possiamo accedere a VBA ArrayList.

Esempi di VBA ArrayList in Excel

Di seguito sono riportati gli esempi di Excel VBA ArrayList.

Puoi scaricare questo modello Excel VBA ArrayList qui - Modello Excel VBA ArrayList

Esempio n. 1: creare istanza di VBA ArrayList

Poiché Excel VBA ArrayList è un oggetto esterno, è necessario creare un'istanza per iniziare a utilizzarlo. Per creare un'istanza, segui i passaggi seguenti.

Passaggio 1: dichiarare la variabile come " ArrayList ".

Codice:

 Sub ArrayList_Example1 () Dim ArrayValues ​​As ArrayList End Sub 

Passaggio 2: poiché Array List è un oggetto, è necessario creare una nuova istanza.

Codice:

 Sub ArrayList_Example1 () Dim ArrayValues ​​As ArrayList Set ArrayValues ​​= New ArrayList End Sub 

Passaggio 3: ora possiamo continuare a memorizzare i valori nella variabile dell'array utilizzando il metodo "Aggiungi". Nell'immagine sottostante ho aggiunto tre valori.

Codice:

 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 

Ora abbiamo assegnato tre valori, come identifichiamo quale è il primo e come possiamo mostrare i valori o usarli per le nostre esigenze.

Se ricordi il tipo di array tradizionale, facciamo riferimento al primo valore di array in questo modo "ArrayName (0)"

Allo stesso modo, possiamo utilizzare la stessa tecnica anche qui.

ArrayValue (0) = "Hello"
ArrayValue (1) = "Buono"
ArrayValue (2) = "Morning"

Mostriamolo nella finestra del messaggio.

Codice:

 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 & ArrayValues ​​(0) 1) & vbNewLine & ArrayValues ​​(2) End Sub 

Ora esegui il codice usando il tasto F5 o manualmente, vedremo "Hello", "Good" e "Morning" nella finestra di messaggio VBA.

In questo modo, possiamo memorizzare un numero qualsiasi di valori con Array List Object.

Esempio # 2 - Memorizza i valori nelle celle utilizzando VBA ArrayList

Vediamo l'esempio di come memorizzare i valori assegnati alle celle nel foglio di lavoro. Ora, guarda il codice VBA sottostante.

Codice:

 Sub ArrayList_Example2 () Dim MobileNames As ArrayList, MobilePrice As ArrayList Dim i As Integer Dim k As Integer Set MobileNames = Nuovo ArrayList 'Nomi dei MobileNames.Add "Redmi" MobileNames.Add "Samsung" MobileNames.Add "Oppo" MobileNames. Aggiungi "VIVO" MobileNames.Add "LG" Set MobilePrice = New ArrayList MobilePrice.Add 14500 MobilePrice.Add 25000 MobilePrice.Add 18500 MobilePrice.Add 17500 MobilePrice.Add 17800 End Sub 

Con due elenchi di array, ho memorizzato Nomi del cellulare e Prezzi del cellulare. Ora dobbiamo inserire questi valori nel foglio di lavoro per questo dobbiamo usare i loop. Il ciclo seguente farà il lavoro per me.

Di seguito è riportato il codice generale per memorizzare i valori nel foglio di lavoro.

Codice:

 Sub ArrayList_Example2 () Dim MobileNames As ArrayList, MobilePrice As ArrayList Dim i As Integer Dim k As Integer Set MobileNames = Nuovo ArrayList 'Nomi dei MobileNames.Add "Redmi" MobileNames.Add "Samsung" MobileNames.Add "Oppo" MobileNames. Aggiungi "VIVO" MobileNames.Add "LG" Set MobilePrice = New ArrayList MobilePrice.Add 14500 MobilePrice.Add 25000 MobilePrice.Add 18500 MobilePrice.Add 17500 MobilePrice.Add 17800 k = 0 For i = 1 To 5 Cells (i, 1) .Value = MobileNames (k) Cells (i, 2) .Value = MobilePrice (k) k = k + 1 Next i End Sub 

Quando eseguiamo il codice manualmente o utilizzando il tasto F5, otterremo il risultato seguente.