Re : macro valeur cible
Dranreb,
Je viens d'essayer à l'instant la modification que vous m'avez communiquée
En revanche j'ai un msg d'erreur lorsque le débogeur arrive à .Columns("FF") : "Référence incorrecte ou non qualifiée"
Sub ApprocherMieux(RgCible As Range, VCible As Double, RgModif As Range, Ajout As Double)
Dim X1 As Double, Y1 As Double, X2 As Double, Y2 As Double
X1 = RgModif.Value: On Error GoTo Resto: Y1 = RgCible.Value
X2 = X1 + Ajout: RgModif.Value = X2: Y2 = RgCible.Value
If Y2 <> Y1 Then
RgModif.Value = X1 + (X2 - X1) * (VCible - Y1) / (Y2 - Y1)
If Abs(RgCible.Value - VCible) < Abs(Y1 - VCible) Then Exit Sub
End If
Resto: RgModif.Value = X1
End Sub
Sub BtCorrig_Click_condition()
Dim VCible As Double, RgVar As Range, RgCbl As Range
For Each RgVar In ActiveSheet.Range("FE27:FE28,FE32:FE34,FE38,FE42,FE46,FE50,FE55:FE56,FE59,FE61")
Set RgCbl = Intersect(ActiveSheet.Columns("CK"), RgVar.EntireRow)
If RgCbl.HasFormula And Intersect(.Columns("FF"), RgVar.EntireRow).Value = 1 Then
VCible = Intersect(ActiveSheet.Columns("FC"), RgVar.EntireRow).Value
If RgCbl.GoalSeek(Goal:=VCible, ChangingCell:=RgVar) Then
ApprocherMieux RgCbl, VCible, RgVar, 0.001
ApprocherMieux RgCbl, VCible, RgVar, -0.00001
ApprocherMieux RgCbl, VCible, RgVar, 0.0000001
ApprocherMieux RgCbl, VCible, RgVar, -0.000000001
Else
MsgBox "Valeur non atteinte"
End If
End If
Next RgVar
End Sub
Merci d'avance
Philippe