În matricile VBA sunt utilizate pentru a defini grupul de obiecte împreună, există nouă funcții matrice diferite în VBA și acestea sunt ARRAY, ERASE, FILTER, ISARRAY, JOIN, LBOUND, REDIM, SPLIT și UBOUND, toate acestea sunt funcții încorporate pentru matrice în VBA, funcția Array ne oferă valoarea pentru argumentul dat.
Funcția Excel VBA Array
Funcția matrice este o colecție de valori într-o singură variabilă. Putem furniza o matrice unui subrutin în VBA, funcții și proprietăți. Tablourile VBA sunt una dintre tehnicile des utilizate pentru a stoca mai multe valori în variabilă.
Exemple de funcții Excel VBA Array
În loc să declarăm multe variabile și să stocăm valorile, putem folosi matricea Excel VBA pentru a stoca valoarea într-o singură variabilă. De exemplu, uitați-vă la exemplul de mai jos
Cod:
Sub Array_Ex () Dim x Integer Dim y As Integer x = 1 y = 2 Range ("A1"). Value = x Range ("A2"). Value = y End Sub
În exemplul de mai sus, am declarat două variabile numite x & y. X deține 1 ca valoare, iar Y deține 2 ca valoare.
Acum, uitați-vă la exemplul funcției matricei Excel VBA cu o singură variabilă.
Cod:
Sub Array_Ex () Dim x (1 până la 2) Ca interval întreg ("A1"). Valoare = x (1) Interval ("A2"). Valoare = x (2) Sfârșit Sub
Acum, dacă rulați acest cod VBA, am avea valori în celula A1 și A2.

Variabilele matrice au returnat rezultatul ca zero. Acest lucru se datorează faptului că tocmai am declarat variabilele ca două, dar nu am atribuit nicio valoare acelor variabile. Deci, trebuie să atribuim valori acestor variabile.
Cod:
Sub Array_Ex () Dim x (1 To 2) As Integer x (1) = 10 x (2) = 20 Range ("A1"). Value = x (1) Range ("A2"). Value = x (2) ) Sfârșitul Sub
Acum executați codul pentru a obține rezultate.

Înainte de a introduce valorile variabilelor matrice către celule, trebuie să atribuim valoarea acelor variabile matrice declarate, așa cum am atribuit variabilele x (1) = 10 și x (2) = 20.
Exemplul # 1 - Inserați numere de serie folosind Static Array
Să vedem exemplul utilizării unui tablou static pentru a insera numere de serie. Aceasta seamănă cu cea precedentă.
Cod:
Sub StaticArray_Ex () Dim x (1 până la 5) Ca număr întreg x (1) = 10 x (2) = 20 x (3) = 30 x (4) = 40 x (5) = 50 Interval ("A1"). Valoare = x (1) Interval ("A2"). Valoare = x (2) Interval ("A3"). Valoare = x (3) Interval ("A4"). Valoare = x (4) Interval ("A5" ) .Value = x (5) Sfârșit Sub
Acum executați acest cod pentru a insera numerele de serie.

Exemplul # 2 - Inserați numere de serie folosind matrice dinamică
Acum vom vedea al doilea tip de matrice, adică un tablou dinamic
Cod:
Sub DynamicArray_Ex () Dim x () As Integer ReDim x (5) x (1) = 10 x (2) = 20 x (3) = 30 x (4) = 40 x (5) = 50 Range ("A1" ) .Value = x (1) Interval ("A2"). Valoare = x (2) Interval ("A3"). Valoare = x (3) Interval ("A4"). Valoare = x (4) Interval (" A5 "). Valoare = x (5) Finalizare sub
Acum executați acest cod pentru a obține rezultatul numerelor de serie. Obținem același rezultat ca și cel anterior.

Dacă observați că nu am furnizat lungimea matricei în timp ce declarăm variabila, în schimb, am atribuit ultima valoare a matricei VBA utilizând funcția VBA Redim. Redim deține ultima valoare a matricei care trebuie trecută.
Exemplul # 3 - Creați o funcție Inserați nume de lună utilizând matricea
Am văzut cum să lucrăm cu tablouri în VBA. Acum vom vedea cum să lucrăm cu o matrice pentru a crea o funcție VBA în Excel. Funcția nu este altceva decât o funcție definită de utilizator în VBA. În afară de utilizarea funcțiilor încorporate, excel VBA ne permite să ne creăm și propriile funcții.
Cod:
Funcție List_Of_Months () List_Of_Months = Array ("Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov "," Dec ") Funcția de încheiere
Codul de mai jos va crea o funcție care poate insera luni în foaia noastră Excel.
Copiați și lipiți codul de mai jos în modulul dvs.

Acum salvați acest cod și închideți editorul VBA. După închiderea editorului VBA, accesați foaia de lucru și tastați formula pe care tocmai am creat-o și ar trebui să vedeți formula numită List_Of_Months în foaia de lucru.

Deschideți formula și apăsați Enter. Vom primi numele din prima lună, adică ian.

Dacă introduceți formula încă o dată, totuși vom primi doar ianuarie, nu luna următoare, februarie. Deci, selectați mai întâi 12 coloane într-un rând.

Acum deschideți formula în celula D1.

Deoarece am creat formula cu matricea, trebuie să închidem formulele doar ca o matrice. Deci, țineți apăsat Ctrl + Shift + Enter. Am avea toate numele de 12 luni.

Lucruri de amintit
- Există încă două tipuri de matrice disponibile, adică matrice bidimensională și matrice multidimensională.
- Tablourile încep de la 0, nu de la 1. Zero înseamnă primul rând și prima coloană.
- Matricea este un subiect important. Trebuie să îl înțelegeți pentru a trece la nivelul următor.
- Variabila matrice va fi una care conține multe date de fiecare dată când avansează la nivelul următor.
- Redim este folosit pentru a stoca ultima lungime a matricei într-un tip de matrice dinamică.