Hoe voeg je een heel bereik toe aan een array in vba?
Stappen om een bereik toe te voegen aan een array in VBA
- Eerst moet u een dynamische array declareren met het variantgegevenstype .
- Vervolgens moet u een andere variabele declareren om het aantal cellen in het bereik op te slaan en deze teller ook voor de lus gebruiken.
- Wijs daarna het bereik toe waar u een waarde aan de array hebt.
- Vanaf hier moeten we een lus maken om alle waarden naar het directe venster af te drukken, zodat u kunt zien dat alle waarden aan de array zijn toegewezen.
Sub myArrayRange() Dim iAmount() As Variant Dim iNum As Integer iAmount = Range("A1:A11") For iNum = 1 To UBound(iAmount) Debug.Print iAmount(iNum, 1) Next iNum End Sub
En wanneer u de bovenstaande code uitvoert, worden alle waarden weergegeven die u uit het bereik (“A1:A11) aan de iAmount-array hebt toegewezen en wordt deze in het directe venster afgedrukt.
Op dezelfde manier kunt u ook een multidimensionale array gebruiken.
Sub myArrayRange() Dim iAmount() As Variant Dim iNum1 As Integer iAmount = Range("A1:B13") For iNum1 = 1 To UBound(iAmount, 1) Debug.Print iAmount(iNum1, 1) & " " & iAmount(iNum1, 2) Next iNum1 End Sub
Of je kunt het ook op deze manier doen.
Sub myArrayRange() Dim iAmount() As Variant Dim iNum1 As Integer Dim iNum2 As Integer iAmount = Range("A1:B13") For iNum1 = 1 To UBound(iAmount, 1) For iNum2 = 1 To UBound(iAmount, 2) Debug.Print iAmount(iNum1, iNum2) Next iNum2 Next iNum1 End Sub