Bonjour a tous !
voila quelques heures que je butte sur un leger probleme qui me reduirait une masse considerable de travail si vous pouviez m'aider a en trouver la solution !
je m'explique,
j'ai un tableau a plusieurs colonnes (A, B et C)
A contenant des noms
B des donnéees diverses
C d'autres données diverses
j'utilise une macro pour extraire les données de ces colonnes (macro simple dans le fichier joint qui consiste a faire B + C) et a renvoyer le resultat dans une autre colonne sur une seconde feuille afin d'etre utiliser pour l'elaboration d'un graphique
je compte dans un premier temps le nombre de ligne rempli dans A grace a:
nligne = Range("A2").End(xlDown).Row
j'utilise ce comptage pour effectuer mon instructions (a savoir B+C) avec
With Worksheets("Feuil1")
For Each c In .Range("A2:A" & nligne)
Worksheets("Feuil2").Range("A" & Trim(c.Row)).Value = .Range("b" & Trim(c.Row)).Value + .Range("c" & Trim(c.Row)).Value
Next c
End With
or pour ameliorer la fonctionnalité de mon fichier ainsi que sa lisibilité j'ai besoin d'appliquer un filtre sur la colonne A que j'ai ajouter dans ma macro avec
Worksheets("Feuil1").Range("A1").AutoFilter Field:=1, Criteria1:="a"
je me retrouve donc avec 3 lignes visible mais ces ligne correspondent aux numero 2,7 et 8
mon comptage de ligne n'est donc plus bon pour le renvoi des données vers la seconde feuille.
ma question est par consequent, est il possible de "dire" a excel "il n'y a que 3 lignes visible donc elles correspondent a la ligne 1 , 2 et 3" pour que le comptage soit a nouveau correct ainsi que le renvoie des données.
le fichier joint et les fonctions ici sont assez basique mais je cherche avant tout a comprendre la mecanique du filtrage et de son utilisation dans le code VBA afin de l'appliquer a mon vrai fichier qui est beaucoup plus consequent en terme de taille.
Cordialement