Extraction de lignes sur 2 critères
Bonjour à toutes et tous et merci pour les conseils prodigués sur ce forum qui m'ont permis de beaucoup avancer dans le projet sur lequel je travaille depuis bientôt un mois,
Pourtant, après avoir passé des heures carrées sur un problème spécifique de ce projet et avoir parcouru les différents topics du forum, je finis par poster:
Je souhaite réaliser un plan de charge à partir d'un plan d'actions défini.
Dans le fichier exemple joint, j'ai un ensemble d'équipements dont chacun a besoin d'une action spécifique.
Chaque action a une périodicité spécifique, l'ensemble étant notifié dans la page "Action"
Pour établir mon plan de charge, je souhaiterai extraire sur la page "Charge" les actions:
- à réaliser avant une date spécifique à entrer en Critère
- pour lesquelles aucune date de solde n'a été indiquée (donc colonne "soldé le" vide)
Idéalement, le mois suivant reprendrait les actions non soldées au cours du (ou des) mois précédent(s).
J'avais trouvé un code pouvant s'approcher ici:
Mais je n'ai pas réussi à l'adapter à mon besoin et j'avoue que je tourne un peu en rond, mon niveau en vba n'étant pas suffisamment élevé bien que depuis quelques semaines, je sois passé du stade quiche + à presque pas trop mauvais !
Si quelqu'un avait une idée sur la manière de pratiquer cette extraction ce serait très grandement apprécié.
JB
bonjour
un essai avec l'utilisation du filtre
la formule en colonneAB cacule si soldé au mois en cours et tiens compte des vides cequi fait soit des OK ou des 1 ; tu filtre selon l'un ou l'autre critere
sinon on peut aussi extraire selon ces criteres ou le "max des soldés" (qui apprait dans la formule )
cordialement
Bonsoir Tulipe et merci pour cette réponse
J'ai déjà fait plusieurs tentatives diverses et variées avec des formules. Afin de ne pas encombrer, j'ai supprimé dans mon fichier exemple une colonne score du mois dont le contenu varie de 0 ( action non effectuée) à 1 action effectuée avant la date requise en passant par 0,5 (action effectuée mais après la date requise) et ce avec un code couleur Rouge, Orange et vert.
Ce que je souhaite pouvoir réaliser c'est l'extraction des lignes et leur copie vers la page "Charge" afin de fournir au technicien un plan de charge. Pour démarrer ce sera un plan de charge mensuel. Il deviendra, je l'espère, hebdomadaire si j'arrive à me sortir de ce mauvais pas....
Mais merci pour la proposition qui me servira très probablement sur une autre partie de mon projet. Toute connaissance est bonne à prendre
Bonjour,
Belle contribution de Tulipe ... formule matricielle avec modulo pour tenir d'une colonne sur 2.
Pour copier/coller, pourquoi ne pas actionner le filtre proposé et ensuite faire une édition ou un copier/coller dans l'onglet ?
Ou alors on prend le problème par la racine, notamment la structuration du planning en n'ayant que :
Equipement | ACTION PREVENTIVE Programmée | A faire avant | Soldé le
Puis en exploitant cette base par des tableaux croisés dynamiques.
re
merci 'fils d'acier"
bah oui je m'etais meme attaché a automatiser au maximum en utilisant le mois d'aujourdhui ainsi ce qui a eté soldé est consideré comme ok donc plus utile
cordialement
Bonjour et merci pour vos réponses.
J’ai mis à profit la journée d’hier pour tester vos propositions.
En réponse à Steelson, le fichier exemple que j’ai posté a déjà été élagué puisqu’il contient normalement des colonnes supplémentaires type ‘Secteur’, ‘Type de contrôle’, ‘criticité, ce qui complique l’utilisation d’un tableau CD
Je me suis donc focalisé sur l’utilisation de la formule matricielle de Tulipe mais j’ai encore du mal avec le code VBA nécessaire à l’exploitation sur l’onglet « Charge ». Toutefois je ne désespère d'y arriver pas et vous tiendrai informés.
Je posterai également le fichier résultant en cas de succès. Il pourra peut être servir
Merci encore pour votre participation pour l’intérêt que vous portez à mon petit projet.
Bonjour à toutes et tous,
Je reviens vers vous car j'ai testé tout ce que j'ai pu trouver pour, au final, ne pas pouvoir sortir du problème ... rageant, surtout après le temps passé
J'ai donc envisagé les choses sou un angle nouveau en ne souhaitant faire sur l'onglet charge que l'extraction de la date de l'opération non soldée.
Je cherche donc à développer un code selon ces 3 critères :
1- Si Colonne D non vide : Test si Colonne E vide. Si oui, copie D dans 1ère cellule non vide de l'onglet charge, colonne D
Si colonne E non vide, on teste la colonne F et ainsi de suite
2 - Colonne D vide, décalage de 2 cellules sur la gauche (colonne F) pour effectuer le même test que précédemment tester précédent et ce jusqu'à la première cellule non vide pour trouver la date de la prochaine opération à réaliser
3 - une fois la première ligne effectuée, on fait de même pour les autres.
J'ai fait quelques bouts de code avec ce que j'ai pu glaner mais rien de fonctionnel, je bute principalement sur les Offset et les Loops.
Je sais que j'en ai déjà demandé beaucoup mais auriez-vous éventuellement une idée de la marche à suivre ? Au moins pour orienter ma réflexion... parce que là je sèche !!
Merci beaucoup à l'avance une nouvelle fois.
Bonjour Banzai64 et merci pour ta réponse qui m'a permis de débloquer la situation, même si je n'avais pas au départ envisagé les choses sous cet angle. J'ai simplement adapté en utilisant une liste de choix pour le mois et non le mois en cours.
J'ai également ajouté le masquage des cellules vides dans mon fichier, je l'ai ajouté dans l'exemple si cela peut servir à quelqu'un.
Merci en tous cas à tous pour votre dévouement et vos précieux conseils !