Bonjour,
C'est mieux d'écrire "ElseIf" tout collé, autrement tu empiles les "IF" pour rien.
De plus, dans ce cas précis il n'y a pas besoin d'expliciter la 2e condition puisque "tout ce qui n'est pas vide est nécessairement plein" donc tu peux juste écrire
If txtBox.Value = "" Then
txtBox.BackColor = RGB(255, 255, 0) ' Jaune si vide
Else
txtBox.BackColor = RGB(255, 255, 255) ' Blanc si non vide
End If
Mais bon théoriquement ton code devrait fonctionner… Je l'ai testé sur un Userform et moi j'ai bien un fond blanc pour les textboxes non-vides, et jaune sur les vides…
Edit : Salut @Jacky, bonne remarque, c'est probablement que ta textbox n'est pas vide ! N'oublie pas aussi que tes commentaires ne correspondent pas au code et cela peut porter à confusion : tu boucles bien sur 5 textboxes, pas 20 ! (et tu colories en jaune, pas bleu !)