Bonjour,
Ce n'est pas vraiment de cette façon qu'on procède normalement. L'incrémentation est faite dans la boucle par l'intermédiaire d'une variable et pas dans une cellule. Une fois le calcul réussi, tu peux si tu le veux entrer le résultat de la variable dans la cellule.
Voilà une incrémentation directement dans la cellule mais le résultat peut ne pas être ce que tu attends. A mettre dans le module de la feuille :
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Count > 1 Then Exit Sub
If Target.Address(0, 0) <> "Q8" Then Exit Sub
Do
Target.Value = Target.Value + 1
Loop Until Range("AH8").Value = "OK"
End Sub
L'incrémentation démarre dès que tu entres une valeur dans la cellule Q8.
Et avec une fonction Perso on ne peut plus basique :
Function Calcul(ValeurDepart As Integer, ValeurMax As Integer) As Integer
Dim I As Integer
I = ValeurDepart
Do
'ici tes calculs...
I = I + 1
Loop Until I >= ValeurMax
Calcul = I
End Function
que tu appelles par exemple de cette façon :
Sub Test()
MsgBox Calcul(5, 1000) 'ce qui forcèment donne 1000 !
'ou
Range("Q8").Value = Calcul(5, 1000)
End Sub