Salut Manu
le problème vient uniquement du retour à la ligne après "Then".
Comme tu as des "ElseIf", il faut commencer comme ceci:
If Range("B55").Value < 50 Then
Range("B65").Value = 1
Elseif... etc.
et là, ça fonctionne.
Lorsque tu mets la condition et l'action sur la même ligne,
VB n'a pas besoin de endif, c'est pourquoi il le refusait.
Mais pour placer plusieurs actions et des "ElseIf", il faut travailler sur plusieurs lignes juste après "Then".
Restons Then... hum !