In deze zelfstudie leert u hoe u een array in VBA kunt wissen.
Hele array wissen
Om een hele array te wissen, kunt u de . gebruiken Verklaring wissen:
1 | Wis arrVoorbeeld |
In praktijk:
123456789101112131415 | Sub ClearArray()'Statische matrix maken'Dim arrVoorbeeld (1 tot 3) als String'Arraywaarden definiëren'arrExample(1) = "Shelly"arrVoorbeeld(2) = "Steve"arrExample(3) = "Neema"'Gehele array wissen'Wissen arrVoorbeeld'Controleer matrixwaarde'MsgBox arrVoorbeeld(1)Einde sub |
Formaat wijzigen en array wissen
Als uw array dynamisch is (een dynamische array is een array waarvan de grootte kan worden gewijzigd, in tegenstelling tot een statische array waarvan de grootte niet kan worden gewijzigd), kunt u de Opdracht opnieuw dimmen om de grootte van de array te wijzigen en de hele array met waarden te wissen.
12 | 'Gehele array wissen'ReDim arrVoorbeeld (1 tot 4) |
Volledig voorbeeld:
12345678910111213141516 | Sub ClearArray2()'Dynamische matrix maken'Dim arrExample() As StringReDim arrVoorbeeld (1 tot 3)'Arraywaarden definiëren'arrExample(1) = "Shelly"arrVoorbeeld(2) = "Steve"arrExample(3) = "Neema"'Gehele array wissen'ReDim arrVoorbeeld (1 tot 4)'Controleer matrixwaarde'MsgBox arrVoorbeeld(1)Einde sub |
Een deel van een array wissen
Zoals hierboven vermeld, zal het ReDim-commando de grootte van een array wijzigen, waarbij alle waarden uit de array worden gewist. In plaats daarvan kunt u gebruik maken van ReDim behouden om de grootte van de array te wijzigen, waarbij bestaande waarden behouden blijven. In de praktijk kan dit worden gebruikt om snel een deel van een array te wissen.
12 | 'Wis Positie 3+ReDim Preserve arrVoorbeeld (1 tot 2) |
Volledig voorbeeld:
12345678910111213141516171819 | Sub ClearArray3()'Dynamische matrix maken'Dim arrExample() As StringReDim arrVoorbeeld (1 tot 3)'Arraywaarden definiëren'arrExample(1) = "Shelly"arrVoorbeeld(2) = "Steve"arrExample(3) = "Neema"'Wis Positie 3+ReDim Preserve arrVoorbeeld (1 tot 2)'Formaat wijzigen naar 3 positiesReDim Preserve arrVoorbeeld (1 tot 3)'Controleer matrixwaarde'MsgBox arrVoorbeeld(3)Einde sub |
Loop door hele array - Waarden resetten
In plaats van arraywaarden te wissen met Erase of ReDim, kunt u de hele array doorlopen en elke waarde opnieuw instellen.
**link naar lus**