/ / Tableau dynamique dans Excel VBA

Tableau dynamique dans Excel VBA

Si la taille de votre tableau augmente et que vous ne voulez pas en modifier la taille, vous pouvez utiliser le Mot clé ReDim. Excel VBA modifie ensuite automatiquement la taille du tableau.

Ajoutez des chiffres à la colonne A.

Tableau dynamique dans Excel VBA

Placez un bouton de commande sur votre feuille de calcul et ajoutez les lignes de code suivantes:

1. Tout d'abord, nous déclarons le tableau nommé nombres. Déclarez également deux variables de type Integer. Une taille nommée et une nommée i.

Dim numbers() As Integer, size As Integer, i As Integer

Remarque: le tableau n'a pas encore de taille. les nombres, la taille et moi sont choisis au hasard ici, vous pouvez utiliser n'importe quel nom. N'oubliez pas de faire référence à ces noms dans le reste de votre code.

2. Ensuite, nous déterminons la taille du tableau et l'enregistrons dans la taille variable. Vous pouvez utiliser la fonction de feuille de calcul CountA pour cela. Ajoutez la ligne de code suivante:

size = WorksheetFunction.CountA(Worksheets(1).Columns(1))

3. Nous connaissons maintenant la taille du tableau et nous pouvons le redimensionner. Ajoutez la ligne de code suivante:

ReDim numbers(size)

4. Ensuite, nous initialisons chaque élément du tableau. Nous utilisons une boucle.

For i = 1 To size
    numbers(i) = Cells(i, 1).Value
Next i

5. Nous affichons le dernier élément du tableau en utilisant un MsgBox.

MsgBox numbers(size)

6. Quittez Visual Basic Editor et cliquez sur le bouton de commande de la feuille.

Résultat:

Dernier élément du tableau

7. Maintenant, pour voir clairement pourquoi on appelle cela un tableau dynamique, ajoutez un numéro à la colonne A.

Ajouter un numéro

8. Cliquez à nouveau sur le bouton de commande.

Résultat de tableau dynamique

Conclusion: Excel VBA a automatiquement modifié la taille de ce tableau dynamique.

9. Lorsque vous utilisez le mot-clé ReDim, vous effacez les données existantes actuellement stockées dans le tableau. Par exemple, ajoutez les lignes de code suivantes au code créé précédemment:

ReDim numbers(3)
MsgBox numbers(1)

Résultat:

Sans conserve

Le tableau est vide.

10. Lorsque vous souhaitez conserver les données du tableau existant lorsque vous le redimensionnez, utilisez le mot clé Preserve.

ReDim Preserve numbers(3)
MsgBox numbers(1)

Résultat:

Avec conserve

Lisez aussi: