Microsoft 365 supprimer espaces par vba et convertir en nombres

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

nikholas928

XLDnaute Nouveau
Bonjour à tous,

Je vous explique ma situation. J'ai un fichier avec plusieurs onglets qui comportent des nombres mais que je ne peux convertir en nombre seulement en supprimant l'espace manuellement (la fonction ctrl+h ne les détectant pas) puis l'option convertir en nombre apparait.
Le nombre d'onglet varie en fonction des fichiers.
Existe t'il une macro permettant de lui indiquer de supprimer tous les espaces de tous les onglets exclusivement dans les cellules contenant ces "nombres" en question puis de convertir toutes cellules en nombre ?
Je galère de mon côté pour la rédaction de la macro :/
Ou auriez-vous une solution plus simple ?

Je vous joins un exemple pour illustrer le problème.

Un grand merci pour votre aide !

Bonne fin de journée,
 

Pièces jointes

Bonjour

à quel endroit exactement y a t il des espaces??
normalement le Ctrl F devrait pouvoir les remplacer par ""

sinon.. je vois que tes colonnes sont au format texte.. déjà. si tu les passais au format standard.. ca irait peut etre mieux?
 
En faite quand tu as la cellule avec les nombres il faut effacer l'espace au cas par en double cliquant sur la cellule en question par question et supprimer directement les espaces visible avec la touche suppr.
Malheureusement, j'ai déjà essayé de convertir en standard puis en nombre mais rien n'y fait.
Par exemple, regardes le fichier ci-joint la page 1, cellule en rouge. J'ai supprimé l'espace à la main et là j'ai simplement la possibilité de convertir en nombre.
La difficulté également c'est que ces fichiers n'affichent pas les numéros de lignes et colonnes comme un fichier de calcul classique...
Merci beaucoup à toi,
 

Pièces jointes

@mutzik Merci beaucoup pour ta réponse.
Alors la table ASCII me parle un peu mais cela s'arrête là de mon côté.
Du coup tu aurais une idée de macro pour dire de convertir tout les caractère 160 en 32 afin qu'il puisse se convertir en nombre directement ?
Merci à toi !
 
Alors j'ai un début de solution avec cette macro :
Sub ddc()

Dim o As Range
On Error Resume Next
For Each o In Selection
If Not o = "" Then o = o * 1
Next

End Sub

En sélectionnant au préalable les colonnes correspondantes que je souhaite convertir, cela fonctionne très bien pour un onglet.
Maintenant il faut ajouter une boucle je pense qui lui permette d'executer cette action à l'ensemble des colonnes sélectionnées sur l'ensemble des onglets du fichier.
Quelqu'un aurait-il une idée ?
Merci à vous,
 
bonjour Nikholas

je sais que je déterre un peu (1 an c'est rien ;-)) ) mais j'ai exactement le même souci....

j'ai essayé de créer une macro avec ton code, mais vu que je suis une quiche en VBA...

Serais tu par hasard en ligne ces temps ci avec quelques éclaircissements... ?

Merci d'avance
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Retour