Comptage de ligne

Résolu/Fermé
Akalia Messages postés 34 Date d'inscription mercredi 25 juin 2014 Statut Membre Dernière intervention 17 août 2016 - 6 août 2014 à 15:46
f894009 Messages postés 17185 Date d'inscription dimanche 25 novembre 2007 Statut Membre Dernière intervention 15 avril 2024 - 7 août 2014 à 17:57
Bonjour,

J'ai beau me torturer l'esprit, chercher sur des sites, j'ai toujours autant de mal avec les comptages de lignes avec des conditions.

J'ai plusieurs tris à faire sur plusieurs colonnes, mais pour récupérer la valeur de ligne. Sur mon exemple, je veux connaître le nombre de lignes qui ont comme condition les suivantes:
Colonne D = GMR.GM400. et colonne E = Ordre de fabrication. Ensuite la même chose avec
Colonne D = GMR.GM400. et colonne E = OF non standard. Puis le total sur les GM400:
Colonne D = GMR.GM400.

Les valeurs des lignes je veux les renvoyer dans la colonne K sur les cellules qui leur sont dédiées: pour le 1er GM400 en standard (qui correspond à ordre de fabrication) pour le 2e GM400 en non standard(qui correspond à OF non standard) et le dernier tout les GM400.

Mon idée est de passer par de la condition, mais je n'arrive strictement pas à récupérer ces valeurs, sachant que je dois aussi le faire sur d'autres GM.

Je procède comme cela.

Option explicit
------------------

'Déclaration des variables
Dim Statut, Stat, TypOF As String
Dim La_date As Date
Dim dernligneBDDCommune, dernligneBDDOFND, Idx, Lg, Lig, Nbre, NbLgOFND As Integer, T_statut
Dim TypGM As String

'Cache les traitements et défilements
Application.CutCopyMode = False
Application.ScreenUpdating = False



'Définition des variables pour la première et dernière ligne
Lig = 1
dernligneBDDOF = Sheets("BDD OF").Range("D" & Rows.Count).End(xlUp).Row

'Boucle sur les lignes
For Lig = 2 To dernligneBDDOF
'Définition des variables sur les colonnes
TypOF = Sheets("BDD Commune").Range("AP" & Lig).Value
TypGM = Sheets("BDD Commune").Range("T" & Lig).Value
If (TypOF = "Ordre de fabrication" And TypGM = "GMR.GM400." Then

'Ici Il faut que je réalise le comptage et la récupération du nombre de ligne respectant la condition au dessus

End If
Next

End Sub



Les codes qui suivent me permettaient de faire le comptage après un copier coller pour le 3e ou pour récupérer le nombre de lignes par rapport au total sur la BDD pour le 2e code.
--------------------------------------------------------------
'Comptage et récupération du nombre de ligne pour les OF standard et non standard
dernligneBDDOFND = Sheets("BDD OF FF").Range("B" & Rows.Count).End(xlUp).Row
T_statut = Application.Transpose(Range("E2:E" & dernligneBDDOFND))
'Boucle pour reporter compter et reporter les données
For cptr = 1 To 2
Statut = Choose(cptr, "Ordre de fabrication", "OF non standard")
For Idx = 1 To UBound(T_statut)
If T_statut(Idx) = Statut Then Nbre = Nbre + 1
Next
With Sheets("Indicateur OF FF")
.Cells(8 + ((cptr - 1) * 3), "D") = Nbre
Nbre = 0
End With
Next
---------------------------------------------------------------
'Récupération du nombre total de ligne des OF non déclarés en FF
NbLgOFND = Sheets("BDD OF FF").Range("B1", [B1].End(xlDown)).Rows.Count
'Copie dans l'indicateur des OF
Sheets("Indicateur OF FF").Select
Range("D14").Select
Selection.Value = NbLgOFND - 1
Selection.Copy


Le problème c'est qu'il faut soit que j'ai la façon de compter et récupérer le nombre de lignes après la condition du tout premier code, soit que j'arrive à mettre la condition avant le 2e code.


J'espère avoir été clair, je bloque sur ce qui me dépannerait sûrement de tout.


Voici le fichier visuellement pour montrer comment s'agencent les éléments, mais le code dans les modules et userform n'est pas bon, ce n'était que pour montrer visuellement.

https://www.cjoint.com/?DHgpTGcwWoN

C'est un peu énervant car j'arrive à faire beaucoup de trucs sympas et je bloque trop souvent sur des petites subtilités :(

3 réponses

f894009 Messages postés 17185 Date d'inscription dimanche 25 novembre 2007 Statut Membre Dernière intervention 15 avril 2024 1 701
6 août 2014 à 17:03
Bonjour,

ai pas tres bien compris vos explications, vous ai modifie votre fichier pour remplir les cellules colonne K du tableau de droite

https://www.cjoint.com/c/DHgrdg0IW5h

a vous de voir.

A+
0
Akalia Messages postés 34 Date d'inscription mercredi 25 juin 2014 Statut Membre Dernière intervention 17 août 2016
6 août 2014 à 19:22
Bonsoir!

Merci d'avoir pris du temps pour me faire ça f894009. Ca marche bien en tout cas, je vais essayer de comprendre tout ce code comment il fonctionne tranquillement, car ça reste flou certaines lignes moi!
0
f894009 Messages postés 17185 Date d'inscription dimanche 25 novembre 2007 Statut Membre Dernière intervention 15 avril 2024 1 701
7 août 2014 à 17:57
Bonjour,

suis la pour vous expliquer au besoin.
0