Bonjour et sur le forum,
en effet, on ne peut pas écrire = Nothing, ou <> Nothing, on peut seulement dire: Is Nothing, ou Not Is Nothing, ce qui pour toi donnera:
Do While (Not Range("A1:X99").Find(Cells(i, 33).Value) Is Nothing) Or (i = 158)
i = i + 1
Loop
La raison c'est que Find te renvoie un objet, et que quand tu dis Nothing, tu ne compares pas une simple variable, mais tu interroges l'objet, de même que pour affecter un objet à quelque chose, tu utilises Set, ici il faut tester avec Is Nothing