J'ai repris le code je l'ai plus ou moins compris, n'empêche que dans cette partie du code je bloque, quelqu'un pourrait la commenter s'il vous plait ?
Sub VersionSolveur()
'Premièrement, déterminer le numéro de la version du solveur.
OfficeVersion = Int(Val(Application.Version()))
'Puis, déterminer le nom du solveur.
Select Case OfficeVersion
Case Is <= 10
MsgBox "Votre version d'Excel n'est pas supportée par le gabarit; des erreurs sont possibles."
SolverName = "solver.xla" & "!"
Case 11 'Excel 2003
SolverName = "solver.xla" & "!"
Case 12 'Excel 2007
SolverName = "solver.xlam" & "!"
'Case 13 'version inconnue… à vérifier éventuellement!
Case Is >= 14 'Excel 2010
SolverName = "solver.xlam" & "!"
End Select
'Ensuite, réinitialiser le solveur.
If OfficeVersion <= 11 Then
Application.Run SolverName & "Solver.Solver2.Auto_open" 'N'existe pas dans Exc07.
End If
Application.Run SolverName & "SolverReset"
'Cocher Min ou Max pour la cible z.
If OfficeVersion <= 12 Then
If Sheets("Données").cboMaxMin.Text = "Max" Then
Application.Run SolverName & "SolverOk", "z", 1, "0", "xij"
Else
Application.Run SolverName & "SolverOk", "z", 2, "0", "xij"
End If
ElseIf OfficeVersion >= 14 Then
If Sheets("Données").cboMaxMin.Text = "Max" Then
Application.Run SolverName & "SolverOk", "z", 1, "0", "xij", 2, "Simplex LP"
Else
Application.Run SolverName & "SolverOk", "z", 2, "0", "xij", 2, "Simplex LP"
End If
Else
MsgBox " Version d'Excel non supportée par ce gabarit."
End If
End Sub
Sub Resoudre()
Dim symbole As Integer, i As Integer, j As Integer
Dim c As Object
Sheets("Modèle").Select
Call VersionSolveur
'Spécifier les contraintes technologiques.
Application.ReferenceStyle = xlR1C1
ActiveWorkbook.Names.Add Name:="MD", RefersToR1C1:= _
"=R" & DebTabM & "C" & NbVar + 4 & ":R" & DebTabM + M + N - 1 & "C" & NbVar + 4
Application.Run SolverName & "SolverAdd", _
"R" & DebTabM & "C" & NbVar + 2 & ":R" & DebTabM + M + N - 1 & "C" & NbVar + 2, 2, "MD"
'Spécifier les options du solveur.
If OfficeVersion <= 12 Then
Application.Run SolverName & "SolverOptions", 10000, 10000, 0.000001, True, False, 1, 1, 1, 0, _
False, 0.0001, True
ElseIf OfficeVersion >= 14 Then
Application.Run SolverName & "SolverOptions", 10000, 10000, 0.000001, True, False, 1, 1, 1, 0, _
False, 0.0001, True, 500, 0, True, False, 0.6, 10000, 1000, False, 3600
Else
MsgBox " Version d'Excel non supportée par ce gabarit."
End If
Application.Run SolverName & "SolverSolve", False, False
Application.ReferenceStyle = xlA1
Call PresenterSolution
End Sub