trouver une somme précise à partir d'une plage contenant plusieurs montant

mimita781

XLDnaute Nouveau
bonjour et SVP aidez moi,

Aprés avoir fait plusieurs recherches sur internet pour resoudre mon probléme des combinaisons mathématique j'ai enfin pu trouver dans votre site la solution(dans la Discussion: Trouver la Combinaison de la somme ) mais ça a échoué aprés l'avoir testé sur mon fichier excel ,le probleme est le suivant :

j'ai une colonne contenant plusieurs montants(vers les 1000 lignes) et j'ai une somme de X ,je voudrais si c'est possible avoirs toutes les combinaison possible des montant de cette colonne pour avoir cette somme la ,la solution proposé dans la discussion sucité n'a pas donné de résultat ,j'ai copié mes montants et la somme voulu et j'ai executé la macro mais sans succés ....je n'ai aucune notion de la programation VBA donc est ce que quelqu'un peut m'aider ....

c'est vraiment important et merci pour votre compréhension.
 

ROGER2327

XLDnaute Barbatruc
Re : trouver une somme précise à partir d'une plage contenant plusieurs montant

Bonjour mimita781
Comme vous le posez, le problème est difficile. Combiner 1000 nombres de toutes les façons possibles mène à plus de 10^301 possibilités (10 suivi de trois cents zéros).

Il serait intéressant d'avoir quelques détails :

Pour obtenir la valeur X, le nombre d'éléments à combiner est-il limité, ou peut-il être quelconques de 1 à 1000 ?

Les éléments ont-ils des valeurs très-différentes, ou s'agit-il de valeurs voisines ?

Existe-t-il ou non des doublons dans les éléments à combiner ?

Ou y-a-t-il quel qu'autre condition permettant de limiter le champ de recherche ?

Quoi qu'ayant déjà travaillé sur ce genre de problème, je ne vois pas vraiment comment répondre au vôtre en l'état.

Mais il y du monde sur ce forum : tout espoir est permis…

ROGER2327
#5128


Vendredi 27 Pédale 138 (Saint Valens, frère onirique, ST)
1er Germinal An CCXIX
2011-W12-1T16:26:55Z
 

mimita781

XLDnaute Nouveau
Re : trouver une somme précise à partir d'une plage contenant plusieurs montant

Bonjour ROGER2327;:)

Je vous remercie pour votre compréhension ainsi que pour votre réponse rapide ,en ce qui concerne les détails en voiçi quelques uns:

1/-le nombre d'éléments n'est pas limité pour obtenir la valeur X mais il existe un seuil minimum ,je m'explique :si je prend un échantillon de 300 élements par exemple,le nombre de combinaisons ne peut-être inferieur à 200 élements ,je précise c'est dans le cadre de la gestion du portefeuil titres dont il faut en avoir au moins le tier pour arriver à la somme voulue .

2/-les élements sont des valeurs réelles et trés différentes.

3/-il existe des doublants dans les élements à combiner.

4/-et finalement je ne vois vraiment pas d'autre conditions permettant de limiter le champ de recherche.en voiçi un exemple en pièce jointe;j'attend avec impatience une réponse dans l'espoir de trouver solution adéquate.

merci encore une fois ROGER2327 et à tous.
 

Pièces jointes

  • trouver combinaison montant.zip
    292.9 KB · Affichages: 2 065
Dernière édition:

Dranreb

XLDnaute Barbatruc
Re : trouver une somme précise à partir d'une plage contenant plusieurs montant

Bonjour.

Juste de quoi faire avancer le problème à l'aide de quelques formules.
Pourrait déboucher sur une solution VBA
C'est une liste de nombres aléatoires entiers préalablement classée en ordre décroissant.
Changez la somme à atteindre en B2
Ne donne pas forcément ni toutes les solutions ni la meilleure, mais c'est une approche qui aurait besoin de vos commentaires.

Cordialement.
 

Pièces jointes

  • RechCompS.xls
    219 KB · Affichages: 1 712

ROGER2327

XLDnaute Barbatruc
Re : trouver une somme précise à partir d'une plage contenant plusieurs montant

Bonjour à tous
Bonjour ROGER2327;:)

Je vous remercie pour votre compréhension ainsi que pour votre réponse rapide ,en ce qui concerne les détails en voiçi quelques uns:

1/-le nombre d'éléments n'est pas limité pour obtenir la valeur X mais il existe un seuil minimum ,je m'explique :si je prend un échantillon de 300 élements par exemple,le nombre de combinaisons ne peut-être inferieur à 200 élements ,je précise c'est dans le cadre de la gestion du portefeuil titres dont il faut en avoir au moins le tier pour arriver à la somme voulue .

2/-les élements sont des valeurs réelles et trés différentes.

3/-il existe des doublants dans les élements à combiner.

4/-et finalement je ne vois vraiment pas d'autre conditions permettant de limiter le champ de recherche.en voiçi un exemple en pièce jointe;j'attend avec impatience une réponse dans l'espoir de trouver solution adéquate.

merci encore une fois ROGER2327 et à tous.
Merci pour cette réponse précise. Le problème dépasse mes comptétences. Désolé.​
ROGER2327
#5139


Samedi 28 Pédale 138 (Dédicace du Tripode, V)
2 Germinal An CCXIX
2011-W12-2T10:45:42Z
 

Dranreb

XLDnaute Barbatruc
Re : trouver une somme précise à partir d'une plage contenant plusieurs montant

J'ai trois questions subsidiaires:
1) - Cherche-t-on la combinaison qui s'approche le mieux de la somme désirée ou celle qui la dépasse le moins possible ?
2) - Le plus grand nombre entrant dans la combinaison doit il être le plus élevé ou le plus petit possible ?
3) - Précisez le sens de
le nombre de combinaisons ne peut-être inferieur à 200 éléments
À+
 

mimita781

XLDnaute Nouveau
Re : trouver une somme précise à partir d'une plage contenant plusieurs montant

Bonjour;

Merci à tous,et à vous Dranreb ,j'ai recopié les éléments à combiner dans votre fichier excel en suivant les étapes demandés,mais je n'ai pas obtenu le résultat voulu ou plus ou moins un solde qui s'approche à celui désiré.

1/-le but de la combinaison dont je veux constituer est de trouver la somme exacte et je suis sure qu'il en existe qu'une seule combinaison.

2/-le plus grand nombre entrant dans la combinaison doit être le plus élevé pour avoir la somme et le plus petit possible si je veux obtenir un autre montant(qui est l'ecart)admettant que c'est le deuxième cas que je cherche donc le nombre le plus petit possible entrant dans la combinaison,est ce que ça peut aider en quelque chose .

3/-et pour "le nombre de combinaisons ne peut-être inferieur à 200 éléments "je me suis peut être mal éxprimé ,c'est plutôt le nombre entrant dans la combinaison qui ne peut être inferieur à 200 élément sur par exemple 300 éléments quand il s'agit de la somme mais s'il s'agit de l'écart ça ne peut-être superieur à20 élements.

j'éspère que j'étais assez claire..merci Dranreb:)
 

mimita781

XLDnaute Nouveau
Re : trouver une somme précise à partir d'une plage contenant plusieurs montant

RE Bonjour ROGER2327;

Je vous en prie ROGER2327,c'est moi qui vous remercie pour l'intérêt que vous avez accordé à mon message,,,je vais chercher encore et j'éspère trouver une solution..

à+:)
 
Dernière édition:

Dranreb

XLDnaute Barbatruc
Re : trouver une somme précise à partir d'une plage contenant plusieurs montant

Rien compris à votre réponse 3.
Ce n'est qu'une ébauche de solution. La liste doit impérativement être classée en ordre décroissant.
Mais Attention: la premiere ligne porte des formules différentes qui doivent rester à leur place.
D'où vous vient la certitude qu'une solution existe ? Avec des nombres réels en plus ? pas plutôt des nombres à virgule fixe comme les montants ?
Avez vous compris mon idée en partant de mes formules et est-ce que cela vous convient ?
Autre présentation souhaitée avant qu'on attaque le problème pour de bon en VBA ?
Quelle serait la durée de calcul maxi acceptable ?
À+
 

MJ13

XLDnaute Barbatruc
Re : trouver une somme précise à partir d'une plage contenant plusieurs montant

Bonjour à tous

Pas sur que cela convienne, mais, voir ce fichier à adapter (pas trop le temps en ce moment :eek:).
 

Pièces jointes

  • Optimisation_Taux_De_Chute_MJ2.zip
    20.7 KB · Affichages: 645
  • Optimisation_Taux_De_Chute_MJ2.zip
    20.7 KB · Affichages: 601
  • Optimisation_Taux_De_Chute_MJ2.zip
    20.7 KB · Affichages: 633

mimita781

XLDnaute Nouveau
Re : trouver une somme précise à partir d'une plage contenant plusieurs montant

Bonjour;:)

Merci à tous, désolée pour hier je devais répondre mais j'avais un empêchement.

Merci pour vous DRANREB, c’est vrais que mon 3ème message n'était pas vraiment clair:confused: mais j'ai bien compris que vos formules peuvent aider en quelque chose, j’avoue que c'est assez complexe pour moi, je n'ai fait que recopier mes éléments préalablement triés en ordre décroissant et j'ai placé la somme souhaitée en B2 sans toucher les formules, je les ai seulement généralisé jusqu'à la dernière ligne car La liste des nombres est assez longue et voila le résultat en pièce jointe.

J’aimerais bien que ça soit rapide si c'est possible car je suis limitée par le temps et peu importe la présentation, l’essentiel le résultat. J’ai vraiment besoin d'une solution rapide SVP j'en serais reconnaissante.

Merci beaucoup
 

Pièces jointes

  • RechCompS.zip
    138.3 KB · Affichages: 762

Dranreb

XLDnaute Barbatruc
Re : trouver une somme précise à partir d'une plage contenant plusieurs montant

Bonjour, ça ne peut évidemment pas marcher avec des nombres négatifs. En les enlevant le résultat n'est pas trop mauvais, si ?.
Il n'y a pas de solution rapide possible. Chaque nouveau nombre ajouté dans la liste multipliera la durée nécessaire à peu près par le nombre total de lignes de la liste.
Ce sera immédiat pendant qulque temps puis il y aura un seuil critique d'une dizaine de lignes ou la durée passera de quelque secondes à plusieurs heures, et dix lignes après il faudra la durée d'existence de l'ausrtralopithèque (4 millions d'années)
 

MJ13

XLDnaute Barbatruc
Re : trouver une somme précise à partir d'une plage contenant plusieurs montant

Bonjour à tous

J’aimerais bien que ça soit rapide si c'est possible car je suis limitée par le temps et peu importe la présentation, l’essentiel le résultat. J’ai vraiment besoin d'une solution rapide SVP j'en serais reconnaissante.

Comme dirait Dranreb "il faudra la durée d'existence de l'ausrtralopithèque (4 millions d'années) " :eek:, le souci, c'est que Mimita ne se rend pas compte du nombre de combinaisons à tester.

De plus au début, il ya un malentendu:

1/-le nombre d'éléments n'est pas limité pour obtenir la valeur X mais il existe un seuil minimum ,je m'explique :si je prend un échantillon de 300 élements par exemple,le nombre de combinaisons ne peut-être inferieur à 200 élements ,je précise c'est dans le cadre de la gestion du portefeuil titres dont il faut en avoir au moins le tier pour arriver à la somme voulue .

Pour moi, il s'agirait de 100 car 1/3 de 300, c'est 100 :confused:

Enfin, peut-être l'acquisition d'un "Cray one" pour ralentir le temps de recherche ;).

Sinon en testant ma méthode, on peut s'en rapprocher, mais de la à trouver la bonne combinaison, j'ai un doute.

La, c'est plus un mathématicien qu'il faut, mais un magicien (on en a dèjà vu) :).
 

mimita781

XLDnaute Nouveau
Re : trouver une somme précise à partir d'une plage contenant plusieurs montant

Je n'ai que 300 lignes à traiter ,et puis c'est vrai sans les nombres négatifs ça marche trés bien ,est ce qu'il ne peut pas y avoir d'autres solutions possibles? je vais essayer de procéder par élimination de tel sorte à ce que la liste soit la plus petite possible.

Merci Dranreb
 
Dernière édition:

Discussions similaires

Statistiques des forums

Discussions
314 486
Messages
2 110 107
Membres
110 666
dernier inscrit
Yaya123