Utiliser une plage de cellule dans une boucle For

FredeAub

XLDnaute Nouveau
Bonjour,
J'ai défini une plage de cellule en lui donnant un nom.
Je souhaite utiliser cette plage de cellule par son nom pour initialiser une liste dans un userform.
Est ce possible ?
Merci.
 
G

Guest

Guest
Re : Utiliser une plage de cellule dans une boucle For

Bonjour,

Code:
'Parcourir les lignes de la plage de cellules nommée
Dim i As Long 
For i = 1 To Range("NomDeLaPlageDeCellule").Rows.count

Next i
S'il s'agit d'un nom localisé à une feuille:

Sheets("NomDeLaFeuille").Range("NomDeLaPlage")

A+
 
Dernière modification par un modérateur:

david84

XLDnaute Barbatruc
Re : Utiliser une plage de cellule dans une boucle For

Bonjour,
à tester :
Code:
Sub a()
Dim i As Long
For i = 1 To [Plage].Rows.Count
    Debug.Print [Plage].Rows(i)
Next i
End Sub
ou
Code:
Sub b()
Dim c As Range
For Each c In [Plage]
    Debug.Print c
Next c
End Sub
A+

Edit : salut l'ami Hasco :)
j'ai l'impression qu'il manque un s à la fin de ton Sheet
 
Dernière édition:
G

Guest

Guest
Re : Utiliser une plage de cellule dans une boucle For

Re,

@David:D
Ce n'est pas qu'une impression...arf:)
Erreur corrigée
Merci et a +++

P.S. pour information: du temps où les ordi étaient moins performants et où l'on recherchait à gagner en rapidité, la forme [PlageDeCellule] était évitée car réputée plus lente car elle est un raccourcie de la méthode Evaluate et demande donc une traduction supplémentaire par le moteur VB. Mais nous ne sommes plus en ce temps là....arf Ah ces vieux et leur habitudes...:cool:
 
Dernière modification par un modérateur:

david84

XLDnaute Barbatruc
Re : Utiliser une plage de cellule dans une boucle For

Re

Ce que tu dis paraît évident quand on y réfléchit (d'ailleurs je ne l'utilise plus mais là j'ai fait une exception:p).
Par contre, value étant la propriété par défaut de l'objet range, le fait d'utiliser c au lieu de préciser c.value n'a-t-il pas la même incidence (petite augmentation du temps de traitement si le moteur VB est obligé de traduire lui-même c par c.value) ?
A+
 
G

Guest

Guest
Re : Utiliser une plage de cellule dans une boucle For

RE,

@l' ami David: tu as raison. Autre avantage, non négligeable, c.value est largement plus compréhensible (on sait tout de suite qu'on fait référence à la valeur et non à l'objet) lorsqu'on a à reprendre une ancienne macro ou celle de quelqu'un d'autre.

A+++
 

Discussions similaires

Statistiques des forums

Discussions
312 154
Messages
2 085 807
Membres
102 986
dernier inscrit
nonoblez