Excel VBA-arrays
Over het algemeen wordt verondersteld dat één variabele een enkele waarde tegelijk bevat, maar als we meerdere waarden in een enkele variabele willen opslaan, dan staat zo'n type variabele bekend als array-variabele, om een array-variabele in VBA te gebruiken, moeten we declareren of definieer het eerst, we kunnen de arrayvariabele definiëren met zijn lengte of zonder zijn lengte.
Stel dat we gegevens hebben die honderden rijen en meerdere kolommen bevatten, en we een code moeten maken die de gegevens gebruikt. Nu moeten we in dit geval veelvouden van de variabele maken die de waarde uit de cellen halen en aan het programma geven. Dit zal erg vermoeiend zijn om zoveel van een variabele te maken, en daarom gebruiken we in dergelijke gevallen Arrays in Excel.

Arrays houden de gegevensset in hun geheugen vast en hebben ons niet nodig om de variabele te declareren voor elk van de waarden die uit de gegevens moeten worden opgehaald. De noodzaak om arrays te gebruiken is vanwege het feit dat in een Excel-variabele is ontworpen om één waarde tegelijk te bevatten. Als er echter meerdere waarden door een variabele worden opgeslagen, wordt deze een array.
- Het maken van een array is als het maken van een aparte geheugeneenheid die de gegevens erin kan bevatten. Om een array te maken, moeten de gegevens van hetzelfde type zijn.
- Arrays die we aan Excel geven, moeten overeenkomen met het type gegevens dat we hebben. Stel dat we gegevens hebben die alleen rijen hebben, dus in dit geval gebruiken we de 'eendimensionale array', en als gegevens ook kolommen bevatten, dan moeten we 'tweedimensionale arrays' gebruiken, omdat deze alleen in staat zijn om de waarden van de rijen en kolommen.
- Arrays moeten ook functioneren om te werken als dynamische arrays of statische arrays. Omdat we een dynamisch bereik aan de formule geven, kunnen we ook de Arrays-variabele maken. Dynamische arrays hebben de functionaliteit om een oneindig aantal rijen en kolommen op te nemen. Als de arrays die we hebben gedefinieerd van een statisch type zijn, kunnen ze slechts een beperkt aantal rijen en kolommen bevatten zoals gedefinieerd op het moment dat de array werd gemaakt.
Uitleg
Array werkt volgens de 'wiskundige regel van een matrix'. Dat wil zeggen, ze identificeren de gegevens alleen op basis van hun locatie. Stel dat als we VBA moeten laten begrijpen dat we "20" nodig hebben in cel "B3", dan moeten we de code van de locatie schrijven als (3, 2) waar de eerste waarde staat voor de locatie van de rij en de tweede waarde staat voor het kolomnummer. In de wereld van Excel wordt deze code van locaties 'bovengrens' en 'ondergrens' genoemd. Standaard begint de locatie in Excel bij één en niet bij nul, dus Excel ziet "A1" als rijnummer 0 en niet als rijnummer 1.
Evenzo beginnen de kolommen vanaf nul en niet vanaf één.

Deze arrays kunnen worden gedefinieerd als een statische array of dynamische array. Als we ze definiëren als een statische array, betekent dit dat ze niet meer kunnen bevatten dan de variabelen zoals gedefinieerd tijdens het coderen. Als we niet zeker zijn van de waarde die door de arrays moet worden onthouden, maken we dynamische arrays en in dergelijke gevallen kunnen ze oneindig veel waarden bevatten.
Nu, nadat we het type array hebben geselecteerd dat nodig is, zullen we nu de gegevens in deze arrays moeten invoeren.
Deze gegevens moeten een voor een worden gegeven om op de onderstaande manieren uit te blinken.

Nadat de gegevens in deze arrays zijn opgeslagen, zijn ze klaar voor gebruik als een variabele in de VBA-codering.
Lijst met top 5 soorten arrays
- Statische arrays
- Dynamische matrix
- Een dimensionale array
- Tweedimensionale array
- Multidimensionale array
Laten we ze allemaal in detail bekijken.
# 1 - Statische arrays
Een array met een vooraf gedefinieerde waarde die erin kan worden opgeslagen.

# 2 - Dynamische reeks
Array met een niet vooraf gedefinieerde telling van waarden die het aankan.
# 3 - Eendimensionale matrix
Een matrix die alleen gegevens uit rijen of kolommen kan bevatten.


# 4 - Tweedimensionale array
Een array die een waarde uit de rijen en kolommen kan opslaan.


# 5 - Multidimensionale array


Hoe gebruik je arrays in VBA (met voorbeelden)?
Arrays kunnen in veel situaties worden gebruikt, maar ze moeten worden gebruikt als het aantal variabelen dat moet worden gedeclareerd groot is en het niet haalbaar is om ze te declareren.
Hieronder staan enkele voorbeelden, maar voordat we naar de voorbeelden gaan, zullen we leren om de VBA-editor te openen met een sneltoets.

Hiermee wordt de VBA-editor geopend. Van daaruit moeten we de code invoeren in 'Dit werkblad'.

Voorbeeld 1
Kies het type array dat u wilt. Moet het een dynamische of statische array zijn?
Als we een dynamische array nodig hebben, definiëren we de dimensie als 'variant'.

Als we een statische array nodig hebben, definiëren we een dimensie als 'Statisch'.

Voorbeeld 2
Definieer de kolommen en rijen die u in de array wilt opslaan.
Als we "1" tussen haakjes hebben ingevoerd, betekent dit dat de array twee rijen waarde kan bevatten aangezien het tellen van Excel begint vanaf nul.

Als we ook kolommen en rijen nodig hebben, dan moeten we ze allebei definiëren.
Hier betekent "1 tot 2" dat twee rijen, en "1 tot 3" betekent dat drie kolommen.

Hier hebben we de regel van hoe Excel rijen telt veranderd en gevraagd om vanaf "1" te tellen en niet vanaf nul.
Voorbeeld # 3
De invoer van gegevens in de array.
De gegevens moeten celgewijs ingevoerd worden. Hier moeten de gegevens worden ingevoerd in de vorm van (I, j) waarbij "I" de rij betekent en "J" de kolom betekent.
Dus "a (1,1") betekent die cel "A1."

Voorbeeld # 4
We sluiten de code.
Nadat de gegevens voor de array zijn ingevoerd, is de laatste stap het sluiten van de code.

Dingen om te onthouden
- Standaard telt Excel de rijen vanaf nul. Dit betekent dat "2" in plaats van "I" 3 rijen betekent en niet 2 rijen. Ditzelfde geldt voor "J."
- De gegevens die moeten worden ingevoerd voor de array, moeten worden gestart vanaf (0, 0), dat wil zeggen vanaf de eerste rij en de eerste kolom.
- Als we de dynamische arrays gebruiken, dan heeft dit de functie van "VBA REDIM" nodig om het aantal rijen en kolommen te definiëren dat moet worden onthouden.
- In het geval van het creëren van een tweedimensionale array, moeten we “Integer” als dimensie gebruiken.
- Het Excel-bestand moet worden opgeslagen in de versie die "Macro-compatibel" is, anders zal de codering die we in VBA hebben gedaan, verdwijnen en de volgende keer niet worden uitgevoerd.