J'ai dans une cellule ce texte "CALL CG1 JUN 12 1.70 "(les quillements y sont pas mais il y a 5 ou6 espace apres le"0"
Je dois faire une RECHERCHE V mais excel ne reconnait pas vu que dans mon autre fichiers j'ai "CALL CG1 JUN 12 1.70" (sans espace à la fin)
Donc je dois faire une étape intermédiaire à savoir: Supprimer les espaces JUSTE à la fin de la cellule. Donc la fonction SUPPRESPACE ne fonctionne pas!
Je pense donc que je dois inventer une fonction VBA? Mais alors la je bloque!!
Quelqu'un pourrait m'aider a creer cette fonction si c'est nécessaire?
Merci
PS: Si besoin d'un example excel me demander je vous met ça en PJ.
Re : supression espace JUSTE à la fin d'une cellule
Bonjour.
Les espaces ne sont probablement pas des espaces (Car(32))
Solution :
(ce serait quand même bien plus facile avec un fichier ...)
Si "CALL CG1 JUN 12 1.70 " est en A1
dans une cellule quelconque : =CODE(STXT(A1;21;1)) vous renvoie une valeur xx
Puis, Essayez :
=SUBSTITUE(A1;CAR(xx);"")
en fait la question est : supprimer les espaces de fin
le probleme est donc double, dans les libellés à traiter il y a des espaces redondants en quantités variables...
La Fonction de feuille SUPPRESPACE élimine les espaces de début et de fin, et limite à un seul les espaces redondants internes
Et comme le fait remarquer JMB9, l'utilisation de RTRIM est judicieuse, mais fait appel à VBA...
l'equivalent feuille de calcul US de SUPPRESPACE (TRIM) renvoi d'ailleurs un résultat différent de la fonction VBA (TRIM)
ce que l'on pourra vérifier avec les fonctions ci-dessous:
pour la chaine : " CALL CG1 JUN 12 1.70 "
Code:
Function supprespaceFC(target)
' -----nettoyage aux extremités et au centre
supprespaceFC = WorksheetFunction.Trim(target)
End Function
Code:
Function supprespaceVBA(target)
'-----nettoyage aux extrémités seules
supprespaceVBA = Trim(target)
End Function
Code:
Function supprespaceDroit(target)
' -----nettoyage à droite
supprespaceDroit = RTrim(target)
End Function
Code:
Function supprespaceGauche(target)
'-----nettoyage à gauche
supprespaceGauche = LTrim(target)
End Function