Astuce VBA : supprimer un tableau
Si vous souhaitez réinitialiser un tableau (Array) pour pouvoir modifier sa taille et son contenu, utilisez l'instruction Erase.
Exemple avec un tableau dynamique
Sub exempleSimple()
nombreExemple = 11
'Déclaration du tableau dynamique
Dim tabExemple()
'Redimensionnement
ReDim tabExemple(nombreExemple - 1)
'EXEMPLE
MsgBox UBound(tabExemple) ' => renvoie : 10
'Suppression du tableau
Erase tabExemple
'Nouveau redimensionnement possible après suppression
ReDim tabExemple(15)
'EXEMPLE
MsgBox UBound(tabExemple) ' => renvoie : 15
End Sub
L'instruction Erase peut s'avérer très utile lorsque votre tableau dynamique est déclaré en tant que variable Public ou Global.
Exemple avec un tableau de taille fixe
Sub exempleSimple()
'Déclaration du tableau
Dim tabExemple(10)
'EXEMPLE : attribution de valeurs
For i = 0 To 10
tabExemple(i) = i
Next
'EXEMPLE
MsgBox tabExemple(5) ' => renvoie : 5
'Suppression du contenu du tableau
Erase tabExemple
'EXEMPLE
MsgBox tabExemple(5) ' => ne renvoie rien (vide)
End Sub
Avec un tableau de taille fixe, les éléments sont réinitialisés (vidés).