Boucle sur données filtrées - VBA

mimy

XLDnaute Occasionnel
Bonjour,

J'ai un tableau qui commence à la ligne A4 et qui se termine en cellule D50.
J'ai pu réaliser un filtre en VBA afin de filtrer sur un critère de la colonne A.

J'ai fait ensuite:

For each cell in MapPlage
sum=sum+range("D"&cell.row)
Next cell

Lorsque je fais un tour de boucle, l'incrément ne se fait pas directement après le "next cell".
En gros mon code boucle 4 fois sur la même valeur de la première cellule filtrée et ne passe qu'à la cellule suivante qu'au bout de la 5eme fois.
Je pense que c'est dû à la position de mon tableau.

Quelqu'un pourrais m'aider?

Merci!
 

vgendron

XLDnaute Barbatruc
Re : Boucle sur données filtrées - VBA

Bonjour,

je pense qu'il faut que tu redéfinisses ta plage uniquement avec les cellules visibles (issues de ton filtre)

Set maplage = Range("A4:D50").SpecialCells(xlCellTypeVisible)
For each cell in MapPlage
sum=sum+range("D"&cell.row)
Next cell

comme il n'y a pas de fichier. c'est pas testé ;-)
 

vgendron

XLDnaute Barbatruc
Re : Boucle sur données filtrées - VBA

rajoutte ceci dans ta boucle..
tu comprendras tout de suite pourquoi tu as 4 fois la meme valeur

For Each Cell In MaPlage
MsgBox Cell.Address

et une question. tu en fais quoi de ta sum?
 
Dernière édition:

Statistiques des forums

Discussions
312 489
Messages
2 088 848
Membres
103 972
dernier inscrit
steeter