Problème de tri et d'extraction de donnees

artz

XLDnaute Nouveau
Bonjour a tous,

Je suis actuelement en train de faire un petit programme qui me permettrait d'organiser une chaine de production (suivant une methode Branch'n'Bound).
J'ai dejas bien avancé mon travail mais je me trouve maintenant confronté á un problème qui me bloque.

J'aimerais créer une petite fonction TD(), exterieur a mon programme, qui me permettrais a tout moment de recuperer les donnèes contenues dans mon tableau d'entrèe.(voir en pièce jointe)

Mon problème est double:
. je dois trier les taches par ordre croissant de "durèe"
. je dois aussi prendre en compte les precedences ainsi que les taches dèja effectuèes.

Par exemple (voir en pièce jointe) la premiere execution de TD() serait =(1;10;2;9;7;5).
Si par la suite on effectue la tache 1, la seconde execution de TD() serait =(10;2;9;7;3;5).

Je pens a stocker les donner sur une feuille anèxe après l'execution du programme pour pouvoir les utiliser par la suite dans mon algorithme principale.

Merci d'avance pour votre aide :D.
 

artz

XLDnaute Nouveau
Re : Problème de tri et d'extraction de donnees

Bonjours Job75,

Oui c'est suivant cette méthode, Branche&Bound que je déroule mon algorithme principale, mais le problème que j'ai est complètement annexe.

Je r'envoi un fichier excel que j'ai un peux modifié afin de synthétiser le problème.


En faite j'ai un tableau qui contient 3 données: le numéro d'une tache, sa durée, et les précédence qu'elle doit respecter.

Ce que j'aimerais faire est:
. Premièrement trier les taches par ordre de croissance de durée ( pour l'exemple ca donne :1,2,5,3,4,6.
. Deuxièmement j'aimerais que le programme prenne en compte les précédences ainsi que les taches déjà effectuées pour a tout moment trouver quels sont les taches disponibles.

Je m'explique, une tache est dites dispo quand on peut lancer son exécution, c'est a dire sois quand elle n'a pas de tache qui la précède (pas de précédences) sois quand la ou les taches qui la précédent sont déjà exécutée.

Si on prend l'exemple qui se trouve dans le fichier excel on a à la première utilisation du programme ce résultat: 1,2,6.
Si on exécute la tache numéro une et que l'on re cherche les tache disponible on a: 2,3,6, et ainsi de suite.

merci pour votre aide
 

Pièces jointes

  • essai.xlsx
    10.6 KB · Affichages: 46
  • essai.xlsx
    10.6 KB · Affichages: 48
  • essai.xlsx
    10.6 KB · Affichages: 45

artz

XLDnaute Nouveau
Re : Problème de tri et d'extraction de donnees

Merci,

l'algo principale est dans ce fichier, la fonction que je veux créer serait TD()
 

Pièces jointes

  • travail.xlsm
    21.3 KB · Affichages: 64
  • travail.xlsm
    21.3 KB · Affichages: 66
  • travail.xlsm
    21.3 KB · Affichages: 66

job75

XLDnaute Barbatruc
Re : Problème de tri et d'extraction de donnees

Bonjour artz,

C'est sûrement clair pour vous mais pas du tout pour moi. Merci d'expliquer :

Si on prend l'exemple qui se trouve dans le fichier excel on a à la première utilisation du programme ce résultat: 1,2,6.
Si on exécute la tache numéro une et que l'on re cherche les tache disponible on a: 2,3,6, et ainsi de suite.

1) comment est le tableau avant toute utilisation ? comme celui de votre fichier ?

2) le résultat 1,2,6 c'est celui que doit renvoyer TD() ? et TD() c'est une fonction VBA ?

3) pourquoi et comment obtient-on ce résultat ?

4) le tableau est-il modifié après cette utilisation ? si oui comment se présente-t-il alors ?

5) "exécuter la tâche numéro une" : qu'est-ce que ça veut dire ? comment choisit-on cette tâche ?

6) pourquoi et comment obtient-on alors le résultat 2,3,6 ?

Un algorithman se doit d'être clair dans ses explications, sinon c'est de la bouillie pour chat :rolleyes:

A+
 

Discussions similaires

  • Résolu(e)
Microsoft 365 Code de tri
Réponses
22
Affichages
490
Réponses
5
Affichages
274

Membres actuellement en ligne

Statistiques des forums

Discussions
312 845
Messages
2 092 770
Membres
105 531
dernier inscrit
Fidele Lebeni