VBA : étendre une plage Excel

garth_algar

XLDnaute Junior
Bonjour à tous,
Voici ma problématique :
J'ai une plage Excel sur une seule colonne (actuellement K4:K30), que j'ai nommée "Liste".
Dans VBA, je dois parcourir un tableau et ajouter à la Liste chaque élément qui n'y figure pas.
Je souhaiterais donc, à chaque fois que c'est nécessaire, augmenter la taille de ma plage "Liste" d'une cellule vers le bas, et là je bloque.
Quelqu'un aurait-il une solution ?
Merci d'avance.
 

garth_algar

XLDnaute Junior
Re : VBA : étendre une plage Excel

Salut Pierrot, merci pour ta réponse.

En ouvrant le lien, j'ai tout de suite pensé à la propriété "Offset".
Malheureusement, on ne peut pas spécifier les dimensions comme avec la fonction "Decaler" d'Excel.
En revanche, les exemples mentionnaient la propriété "Resize", qui me semble plus adaptée.
Après, je ne suis pas très serein sur la syntaxe. Sans conviction, j'ai essayé ceci :

Code:
n = Range("Liste").Rows.Count
n = n + 1
Range("Liste") = Range("Liste").Resize(n, 1)

La taille de la plage n'a pas changé, et son contenu a été effacé !
 

david84

XLDnaute Barbatruc
Re : VBA : étendre une plage Excel

Bonjour, salut Pierrot,
sans fichier exemple, difficile de t'aider...
non testé mais peut-être quelque chose dans le genre :
Code:
MaPlage = Range("A1").Offset(Nb_ligne,Nb_colonne).Resize(n, 1)
Regarde ici sur le site de JB.
A+
 

garth_algar

XLDnaute Junior
Re : VBA : étendre une plage Excel [RESOLU]

Je ne comprends pas bien ce que tu veux dire, mais j'ai trouvé de mon côté :
Code:
Dim PLAGE As Range
Set PLAGE = Range("Liste")
n = PLAGE.Rows.Count
n = n + 1
PLAGE.Resize(n, 1).Name = "Liste"
Merci, tu m'as mis sur la bonne piste !
 

Discussions similaires

Statistiques des forums

Discussions
312 097
Messages
2 085 257
Membres
102 840
dernier inscrit
blaise09