La fonction Val sert à convertir en nombre une chaine de caractères commençant par un nombre comme ici :
Val(" 5 ancienne valeur") renvoie bien 5 et c'est donc correct.
Sinon tester la cellule avec IsNumeric par exemple …
Et Evaluate("N(A1)") renvoie bien 0 ! La fonction N renvoyant toujours 0 pour une cellule au format texte …