Je ne comprends pas ton calcul, peux-tu expliquer ce que tu cherche à obtenir comme résultat
J'ai corriger ton code, sans être certain de comprendre
Cordialement
Sub ESSAI_2()
Dim A38 As Integer ' ne sert à rien puisque non utilisé
Dim A As Single
Dim Re As Single
Dim B As Single
A = Range("A20").Value
Re = Range("D5").Value
B = Range("A38").Value 'ne sert à rien puisque la valeur est remplacée dès le premier calcul
If A > 0.55 Then
If Re > 200000 Then
B = 1
Else
B = 0.3164 * 64 / (Re) ^ (1 / 4)
End If
Else
If Re > 40000 Then
B = 1
Else
B = 0.3164 * 45 / (Re) ^ (1 / 4)
End If
End If
Range("A38") = B
End Sub