Comparer des colonnes et afficher un ordre de passage
Bonjour,
Je vous pose ici mon problème. J’ai une feuille EXCEL ou se trouve dans la première colonne, le numéro des emplacements de mes outils dans une machine, la première ligne correspond aux étiquettes du nom des transformations (Débutant par A**). Pour chaque opération, il y a des outils spécifiques qui sont placées sur les stations.
Dans mon projet VBA, je dois faire une étude comparative de plusieurs colonnes de ce tableau afin de classer les transformations dans un certains ordre afin de limiter le changement des outils vu que certaines transformations ont des outils identiques.
L’idée de base est de demande à l’utilisateur le nom de sa transformation de base (AX1 par exemple), et les autres transformations qu’ils souhaitent comparer (AX2, AS1, AS2 & AS3). L’objectif est de classer les transformations dans l’ordre de comparaison suivant :
Quand la transformation AX1 est finie, on peut enchainer avec AS1 qui a le plus grand nombre d’outils communs à AX1
Pour ensuite obtenir un ordre de passage :
AX1, AS1, AX2, AS2 & AS3.
Il faut respecter les lignes car certains outils font une opération identique mais sur une station différente donc il faut changer l’outil de base. Je ne sais pas si j’ai été bien clair mais l’idee est de sortir un classement en comparant plusieurs colonnes avec une colonne référence.
Salut,
Ton projet à l'air intéressant mais malheureusement je ne comprend pas tout à ton explication. Peux tu essayer d'expliciter ?
(Quitte à nous expliquer le cheminement que tu fais actuellement sur ton exemple pour arriver au résultat que tu proposes)
Je ne comprend pas pourquoi il n'y a pas d'opération 5,6, 8 et 9 sur le AX1. Ne serait-il pas plus logique de "remplir" les trous et de mettre toutes les hachures à la fin ?
Girodo,
Dans mon tableau, la station se compose de 12 emplacements ou l’on peut mettre des outils (DMC1, EN4, etc.) Chaque transformation (AX1, AX2, AS1, AS2, etc.) nécessite des outils qui sont positionnées sur la station de la machine à des emplacements précis. (Certaines stations demeurent vides car chaque operation necessite uniquement qu'un nombre definit d'outils) Comme on peut le voir, des transformations sont assez similaires puisqu’ils utilisent des outils identiques qui sont sur la même station.
Pour le moment, les transformations s’enchainent de façon non-coordonnes donc parfois, on passe d’une transformation a une autre en enlevant tous les outils pour en mettre des nouveaux, et cela constitue une perte de temps quand on fait une autre transformation qui nécessitait des outils similaires a la première opération.
L’objectif de ce projet est de programmer un code qui partirait d’une transformation de base, par exemple la transformation AX1 (qui était la dernière transformation performée par la machine et dont les outils sont encore à l’intérieur) et de comparer les prochaines transformations pour déterminer quelle est celle qui est le plus adéquat afin de limiter le changement d’outils.
Par exemple, si on prend AX1 en référence. Et que l’on souhaite faire des nouvelles transformations, il faut un ordre de passage de la transformation qui demande le moins de changement d’outil à celle qui en demande le plus.
EX: On a AX1 en référence que l’on compare avec AX2, AS1, AS2, AS3 (La comparaison a lieu de ligne en ligne)
Si AX2 a 3 outils communs sur des stations communes, AS1 en a 0, AS2 en 4 et AS3 en a 1
On affiche l’ordre suivant :
AX1 – AS2 – AX2 – AS3 puis AS1
Donc cette semaine, l’enchainement des opérations est la suivante pour limiter le nombre de changement d'outils.
J'ai fait un premier test qui semble fonctionner pour la détermination de l'opération n°2, à valider avant d'étendre au reste
Girodo,
J'ai quand même été jusqu'en bas,
A toi de me dire si le résultat qui en ressort est celui que tu souhaitais !
Girodo,