Bonjour,
je viens chercher de l'aide concernant un problème sur lequel je bloque depuis plusieurs semaine.
Je vais essayé d'être clair car c'est très spécifique. Pour l'explication, j'ai crée un exemple se basant sur la fabrication d'une voiture (ptite ptite voiture...)
Pour ceux qui connaissent un peu, cela concerne une gestion de configuration de plusieurs modèles de voiture en sachant que chaque modèle contient une liste de modifications demandées par les client.
Donc, on a une liste de modif avec leur validité et on a la liste des modèles de voiture.
Exemple :
Modif 1 est valable pour le modèle "voiture A","voiture B","voiture C","voiture D","voiture E"
Modif 2 est valable pour le modèle "voiture B"
Modif 3 est valable pour le modèle "voiture C"
On a donc le résultat suivant :
configuration numéro 1 = Modif 1 = "voiture A","voiture D","voiture E","voiture F"
configuration numéro 2 = modif 1 + modif 2 = "voiture B"
configuration numéro 3 = modif 1 + modif 2 + modif 3 = "voiture C"
Maintenant si on rajoute une modif 4 qui sera valable pour "voiture D","voiture E","voiture F"
On a donc le résultat suivant:
configuration numéro 1 = Modif 1 = "voiture A"
configuration numéro 2 = modif 1 + modif 2 = "voiture B"
configuration numéro 3 = modif 1 + modif 2 + modif 3 = "voiture C"
nouvelle configuration numéro 4 = modif 1 + modif 2 + modif 3 + modif 4 = "voiture D","voiture E","voiture F"
Mon problème est que je n'arrive pas définir les configurations manquantes. Dans cet exemple, il s'agit de la configuration numéro 4.
Bon, si vous avez suivi, cela a l'air assez simple mais cela se complique si on a plus de 50 modif.
J'ai essayé de me servir des poids en base 2 mais je bloque.
Pour que ce soit plus clair, j'ai fais un fichier excel décrivant le fonctionnement.
Pour info, j'ai déjà développé une algo VB.NET en me basant sur toutes les combinaison de modif possible mais ça tourne trop longtemps lorsqu'il y a trop de modif (ça je m'y attendais).
En plus mon résultat est faux.
Je cherche donc une autre solution qui serait d'en un premier en vba et que retranscrirait en vb.net par la suite.
Si quelqu'un a un piste, ce serait super.
Merci d'avance.
Partager