Ensemble vide à la fin de la boucle VBA Excel

J'ai le code ci-dessous qui ajoute des valeurs à un tableau s'il répond à un critère.

Il continue à boucler horizontalement à travers les colonnes en travers d'une ligne, puis il répète la même chose pour la rangée suivante et ainsi de suite.

J'essaie d'effacer les valeurs accumulées dans le tableau et de le vider à la fin de la boucle des colonnes:

For a = 21 To 23 Count = 0 For b = 2 To 36 If Not Worksheets("Sheet1").Cells(a, b).Value = "A" And Not Worksheets("Sheet1").Cells(a, b).Value = "B" Then Count = Count + 1 Else If Not Count = 0 Then Dim arr() As Long arrLen = 1 ReDim Preserve arr(1 To arrLen) arr(arrLen) = Count arrLen = arrLen + 1 For i = LBound(arr) To UBound(arr) msg = msg & arr(i) & vbNewLine Next i Count = 0 End If End If Next b MsgBox Worksheets("Sheet1").Cells(a, 1).Value & vbNewLine & msg Erase arr 'not working Next a 

Comme vous pouvez le voir à partir du code ci-dessus, je reçois un msgbox affichant les valeurs à la fin de chaque boucle, mais comme cela se poursuit, le réseau devient de plus en plus important, ce qui indique que la ligne Erase ne fonctionne pas.

Aide aimablement!

Vous pouvez soit utiliser une boucle pour définir les éléments du tableau en null ou ReDim le tableau loin:

 Sub marine() Dim arr() ReDim arr(1 To 2) arr(1) = "Alpha" arr(2) = "Beta" ReDim arr(1 To 1) arr(1) = "" End Sub 

De cette façon, vous pouvez réutiliser le même nom de masortingce plus tard dans le sous.