Récupérer données seulement si suite logique

Bonjour,

je dois récupérer des temps sur un fichier Excel.

ce fichier est composé de données sur le nombre de pièce par plaque en case D (ici, une plaque de 6 pièces), un statut (pièce OK ou KO) et de l'heure à laquelle la pièce est passée. quand une pièce est KO, elle repasse un 2 ème test à la fin de la plaque

je ne dois prendre uniquement les temps des pièces OK qui s'enchaine sur une plaque, c'est à dire de la 1 à la 6 en étant OK.

je souhaitais donc faire un filtre pour virer les KO, puis faire une formule pour récupérer les données ou je ne récupérerais uniquement que ceux ou 6 pièces s'enchainent, ce qui m'évitera d'avoir par exemple en ligne 131 à 137, 1/2/3/5/6/4.

Pouvez-vous m'aider?

Le but par la suite est de faire la différence entre toutes les pièces 1 pour avoir un temps / plaque.

Merci d'avance.

5essais-kim.xlsx (29.62 Ko)

peut être que ça n'est pas possible...

je n'arrive pas à trouver.

Bonsoir,

Cette formule simple convient à ton tableau actuel pour extraire le temps de la pièce 1:

=SI($D5=1;SI($C11<>"";SI(ET($C11<>$C5;$C10=$C5);$B5;"");SI($C10<>"";$B5;""));"")

Mais je n'ai pas compris ce que tu voulais faire d'autre.

Cordialement,

Ferrand

5essais-kim.xlsx (41.83 Ko)

Bonjour,

merci c'est exactement ça car ça fonctionne pour tout mes besoins ou je n'ai que 6 pièces.

Par contre, mes besoins ou le nombre MAX est autre, ne marche pas car la formule va de 6 en 6...

y'a t'il moyen de faire la même recherche, avec comme intervalle de recherche, la valeur max de la colonne D?

exemple:

si le nombre MAX est 40 dans la colonne D, la 1ère formule ira de D5 à D39.

Toutes mes données, à ce moment là iront de 40 en 40.

si je prend une autre donnée, je ré-écraserais le texte, et la quantité pourra aller de 2 en 2...

je ne sais pas si j'ai été clair...

merci d'avance.

Bonjour,

Je n'avais pas dans ton modèle les éléments pour la rendre adaptable à tous les cas que tu rencontres...

Il faudrait confirmer d'abord que ce que tu souhaites extraire est bien la valeur horaire pour la pièce 1 (dans tous les cas).

Ensuite que ton tableau de travail est toujours constitué de la même façon avec ces 4 colonnes, que la ligne au-dessus reste vide, et que la ligne qui suit le tableau reste également vide.

Et si le nombre de pièces varie, le tableau est toujours constitué de la même façon : succession 1, 2, 3... reprise des KO...

Et j'introduis un élément pour relativiser la formule, de façon qu'en la recopiant en première ligne du tableau, en E, elle puisse fonctionner pour tout tableau.

Cordialement,

Ferrand

Bonjour,

j'ai modifié le fichier joint, avec 3 cas différents.

feuille 1, 6 pièces, feuille 2, 40 pièces, et feuille 3, 18 pièces.

je te confirme que je souhaite bien extraire les valeurs 1 d'une série OK pour toutes les pièces.

Si 1 KO dans la série, il ne faut pas le comptabiliser. ( comme la formule entrée dans le premier essai)

il y aura toujours les lignes vides sur le dessus, par contre elle n'est pas seulement constitué de 4 colonne, mais peut avoir des 50aines, que je copie et colle, mais dont je n'ai pas besoin. je peux copier et coller les données des 4 colonne pour n'avoir que celle là si besoin.

le nombre de lignes sera différents à chaque fois. je me suis donnée un MAX de 1000 lignes.

par contre, le tableau est toujours configuré de la même façon, enchainement des pièces "logiques" et , si pièce KO, elle repasse une deuxième fois à la fin de la plaque. qu'elle soit KO ou OK la deuxième fois, je ne veux pas de la donnée de cette plaque.

2essais-kim.xlsx (64.14 Ko)

OK, je vois ça dès que possible...

Si je comprends bien, ces 4 colonnes ne se trouvent pas en A, B, C, D dans le fichier initial. Il faut donc s'appuyer sur la position relative. Ou bien tu transfères sur une nouvelle feuille pour ton extraction d'heure et à ce moment là on commence toujours par A ?

A+

Ferrand

Si, les données en Arc ou D seront toujours du même genre, pas de.problème.

Par contre, les données à partir de E peuvent varier et il peut y en avoir jusqu a des colonnes à 2 lettres.

Si les données utiles sont bien dans les colonnes A à D, je les traite en absolues pour que ça fonctionne quelle que soit la colonne où on place la formule.

A+

Voilà la formule provisoirement "définitive" :

[b]=SI($D5=1;SI(DECALER($C5;MAX($D:$D);)<>"";SI(ET(DECALER($C5;MAX($D:$D);)<>$C5;DECALER($C5;MAX($D:$D)-1;)=$C5);$B5;"");SI(DECALER($C5;MAX($D:$D)-1;)<>"";$B5;""));"")

[/b]

Il faut savoir que le formule ne s'occupe pas des KO ou OK. Celle-ci a été modifiée pour s'adapter aux variations du nombre de pièces (identifié comme nombre maximum dans la colonne D.

Elle cherche les 1, vérifie que à la position théorique du 1 suivant le code Flan en C est différent de celui qui précède, auquel cas le lot est bon et elle prélève l'indication horaire.

En fin, à cet emplacement du 1 suivant elle va trouver une cellule vide : dans ce cas elle s'assure que le 1 précédent est servi et elle valide.

Cette dernière vérification n'intervient logiquement qu'une fois en fin de colonne. Mais sur ta série 18 pièces il y a plusieurs trous en C. Il ne semble pas que cela ait eu de conséquence (mais à vérifier).

Si des lots dépourvus de codes flan peuvent être corrects, ils pourraient ne pas être validés, et vice versa. Ce point est à regarder de plus près...

Il y a 2 autres anomalies que j'ai noté dans cette feuille : un lot de 17 pièces (la 12 manquante), non validé, normal, incomplet ; un autre avec la 12 KO, mais non reprise en fin, d'où le lot validé par la formule.

Aucun souci pour 6 pièces et 40 pièces.

A toi de voir maintenant.

Cordialement

Ferrand

7essais2-kim.xlsx (87.36 Ko)

bonjour,

merci à toi, ça m'a l'air parfait.

merci aussi pour ton analyse! s'il manque une pièce, le temps n'est pas pris en compte et c'est très bien, par contre je ne comprend pas pourquoi 1 pièce n'est pas repasser... mis le cas sera très rare, donc pas de soucis!

merci à toi pour ta très grande aide!

C'est toi qui appprécie s'il reste des problèmes à régler ou si cela convient...

Avec formules, ça devient lourd d'en rajouter, mais si tu penses qu'il faut approfondir les vérifications c'est par macro qu'on pourra mieux régler la question.

Bonne continuation et bonne journée.

Ferrand

Rechercher des sujets similaires à "recuperer donnees seulement suite logique"