Sub chercheOK28()
Dim i As Long, N As Long, Cpt As Long
Application.ScreenUpdating = False
N = -1
[a33] = 0
N = Application.InputBox("Borne haute de la boucle ?", Type:=2, Default:=10000)
If N <= 0 Then Exit Sub
Application.Calculation = xlCalculationManual
For i = 1 To N
  If i Mod 1000 = 0 Then
    Application.ScreenUpdating = True
    [a33] = i
    Application.ScreenUpdating = False
  End If
  Application.Calculate
  If [b33] = 28 Then Exit For
Next i
If [b33] = 28 Then
  MsgBox "28 atteint au " & Format(i, "# ##0") & " eme essai"
  [a33] = i
Else
  MsgBox "28 pas atteint"
  [a33] = "*****"
End If
End Sub
Sub chercheKO28()
Dim i As Long, N As Long, Cpt As Long
Application.ScreenUpdating = False
N = -1
[a33] = 0
N = Application.InputBox("Borne haute de la boucle ?", Type:=2, Default:=50000)
If N <= 0 Then Exit Sub
Application.Calculation = xlCalculationManual
For i = 1 To N
  If i Mod 1000 = 0 Then
    Application.ScreenUpdating = True
    [a33] = i
    Application.ScreenUpdating = False
  End If
  Application.Calculate
  If [b33] <> 28 Then
    MsgBox "Pas de concordance au premier calcul à la " & Format(i, "# ##0") & " eme tentative"
    [a33] = i
    Exit For
  End If
Next i
If [b33] = 28 Then
  MsgBox "Toutes les concordances ont eu lieu au 1er essai sur " & _
    N & " tentatives"
End If
End Sub