Autres valeur cible - plusieurs cellules à modifier au lieu de une

rar075570

XLDnaute Nouveau
Bonjour,

Je voudrais demander votre aide, j'ai effacé accidentellement les quantités (nombres entiers positifs) du tableau ci-dessous et j'arrive pas à les retrouver. Avec valeurs cibles d'excel, excel ne cherche à modifier qu'une seule cellule alors qu'il y plusieurs quantité à chercher:

La valeur à atteindre est de 952.020

Prix unitaireQuantitéTOTAL
32 875,00​
1​
32 875,00​
30 300,00​
8​
242 400,00​
49 785,00​
6​
298 710,00​
17 965,00​
8​
143 720,00​
TOTAL
717 705,00​
>>>
952 020,00

Merci beaucoup de votre aide

andry
 
Solution
Bonjour rar,
Une équation à 4 inconnue, non solvable. D'ailleurs même le solveur ne s'en sort pas ... sauf avec des valeurs décimales.
Reste la méthode de bourrin :
VB:
Sub calcul()
V1 = 32875
V2 = 30300
V3 = 49785
V4 = 17965
' 55 car 952020/17965=52.99 donc la plus grande Qté sera inférieur à 55 puisque 17965 est la plus faible valeur.
For i1 = 0 To 55
    For i2 = 0 To 55
        For i3 = 0 To 55
            For i4 = 0 To 55
                Resultat = i1 * V1 + i2 * V2 + i3 * V3 + i4 * V4
                If Resultat = 952020 Then GoTo Fin
            Next i4
        Next i3
    Next i2
Next i1
Fin:
[b1] = i1
[b2] = i2
[b3] = i3
[b4] = i4
End Sub

Solution :
3287514
30300
...

sylvanu

XLDnaute Barbatruc
Supporter XLD
Bonjour rar,
Une équation à 4 inconnue, non solvable. D'ailleurs même le solveur ne s'en sort pas ... sauf avec des valeurs décimales.
Reste la méthode de bourrin :
VB:
Sub calcul()
V1 = 32875
V2 = 30300
V3 = 49785
V4 = 17965
' 55 car 952020/17965=52.99 donc la plus grande Qté sera inférieur à 55 puisque 17965 est la plus faible valeur.
For i1 = 0 To 55
    For i2 = 0 To 55
        For i3 = 0 To 55
            For i4 = 0 To 55
                Resultat = i1 * V1 + i2 * V2 + i3 * V3 + i4 * V4
                If Resultat = 952020 Then GoTo Fin
            Next i4
        Next i3
    Next i2
Next i1
Fin:
[b1] = i1
[b2] = i2
[b3] = i3
[b4] = i4
End Sub

Solution :
3287514
303004
497856
179654
952020
 

rar075570

XLDnaute Nouveau
Bonjour rar,
Une équation à 4 inconnue, non solvable. D'ailleurs même le solveur ne s'en sort pas ... sauf avec des valeurs décimales.
Reste la méthode de bourrin :
VB:
Sub calcul()
V1 = 32875
V2 = 30300
V3 = 49785
V4 = 17965
' 55 car 952020/17965=52.99 donc la plus grande Qté sera inférieur à 55 puisque 17965 est la plus faible valeur.
For i1 = 0 To 55
    For i2 = 0 To 55
        For i3 = 0 To 55
            For i4 = 0 To 55
                Resultat = i1 * V1 + i2 * V2 + i3 * V3 + i4 * V4
                If Resultat = 952020 Then GoTo Fin
            Next i4
        Next i3
    Next i2
Next i1
Fin:
[b1] = i1
[b2] = i2
[b3] = i3
[b4] = i4
End Sub

Solution :
3287514
303004
497856
179654
952020

Bonjour Sylvanu,

Merci beaucoup de votre prompte réponse, j'ai oublié de mentionner que le total des quantités est 28 que j'ai pu enregistrer dans un autre fichier et là vous avez trouvez 28.
Encore merci.

rar075570
 

ODVJ

XLDnaute Impliqué
Bonjour à tous,

Petite précision concernant le solveur.
Il n'a pas de problème pour obtenir une solution en nombres entiers avec le simplexe.
La modélisation peut se faire en minimisant, en maximisant ou en utilisant une valeur avec une ou deux contraintes seulement.

Cordialement

xld_valeur cible_solveur.jpg
 

ODVJ

XLDnaute Impliqué
Bonjour,

Je suis sous XL2010.

Dans ton cas, tu peux te tourner vers OpenSolver ou SolverStudio qui sont des addins fonctionnant sous xl2007 et qui sont des sur-ensembles du solveur d'excel.
Tu peux les utiliser comme le solveur de base mais ils offrent des possibilités étendues tant au niveau de la taille des modèles qu'au niveau des langages de modélisation que tu peux utiliser si tu le souhaites.

Çà reste du vba donc c'est moins rapide que Glpk ou d'autres solveurs commerciaux, mais ça suffit amplement pour les modèles de base et ça reste dans le monde du tableur.
Les adeptes du solveur d'excel ne seront donc pas perdus.

Cordialement
 

Statistiques des forums

Discussions
312 291
Messages
2 086 842
Membres
103 399
dernier inscrit
Tassiou