Difficile à expliquer:
UCase est une fonction comprise dans VBA. Ce n'est pas une propriété de l'objet application.
D'ailleurs, dans l'éditeur VBA, quand tu tapes Application. (il faut taper le point) , tu as la liste de toutes les propriétés, objets, méthodes... qui découlent de l'objet Application, et Ucase n'en fait pas partie.
Ce qui me surprend plus, c'est que Application.proper fonctionne, car pour moi, Proper n'est que la traduction en VBA de la fonction d'excel NOMPROPRE. C'est pour cela que je pensais que Application.proper devait être remplacé par Application.worksheetfunction.proper Apparemment, le raccourci est possible.
Pour essayer d'être plus clair:
Ucase est une fonction de VBA
Proper est l'appel par VBA de la fonction NOMPROPRE d'Excel
Enfin, Ti me contredira peut-être, où saura mieux expliquer que moi.
Sinon, un petit conseil plus important: dans ta macro ici, remplace activecell par target, car moi, dans mon menu outils, options d'excel, j'ai choisis de déplacer la cellule active vers le bas après enter. Donc quand je saisi en cellule A1, après enter:
activecell devient la cellule A2
Alors que dans la procédure worksheet_change, target reste A1
Allez, bonne soirée.
Laurent.