Convertir un texte en nombre
Résolu
@nnie
Messages postés
2134
Date d'inscription
Statut
Membre
Dernière intervention
-
Utilisateur anonyme -
Utilisateur anonyme -
A voir également:
- Impossible de convertir texte en nombre excel
- Telecharger macro convertir chiffre en lettre excel - Télécharger - Tableur
- Excel cellule couleur si condition texte - Guide
- Convertir audio en texte word - Guide
- Liste déroulante excel - Guide
- Nombre de jours entre deux dates excel - Guide
6 réponses
Dans la zone Remplacer essayez de coller l'espace en cause:
Sélectionner un nombre, dans la barre de formule sélectionner l'espace en cause, copier, coller dans la zone de saisie de Remplacer. ( La manœuvre pour ne saisir que le seul espace est précise voire délicate)
Avez -vous testé la solution Substitue()?
Rappel: =Estnum(A1) vérifie si le contenu est un nombre quelque soit le format.
=Code(A1) donne le code du premier caractère.
=Car(xxx) peut remplacer une saisie.
Sélectionner un nombre, dans la barre de formule sélectionner l'espace en cause, copier, coller dans la zone de saisie de Remplacer. ( La manœuvre pour ne saisir que le seul espace est précise voire délicate)
Avez -vous testé la solution Substitue()?
Rappel: =Estnum(A1) vérifie si le contenu est un nombre quelque soit le format.
=Code(A1) donne le code du premier caractère.
=Car(xxx) peut remplacer une saisie.
Salut !
Peut-être as-tu déjà essayé, mais microsoft à fait une aide à ce sujet : https://support.microsoft.com/fr-fr/office/convertir-les-nombres-stock%C3%A9s-en-tant-que-texte-en-nombres-40105f2a-fe79-4477-a171-c5bad0f0a885#:~:text=S%C3%A9lectionnez%20les%20cellules%20contenant%20les,convertit%20le%20texte%20en%20nombres.
Assure toi d'avoir bien fait les manipulations correctement.
Peut-être as-tu déjà essayé, mais microsoft à fait une aide à ce sujet : https://support.microsoft.com/fr-fr/office/convertir-les-nombres-stock%C3%A9s-en-tant-que-texte-en-nombres-40105f2a-fe79-4477-a171-c5bad0f0a885#:~:text=S%C3%A9lectionnez%20les%20cellules%20contenant%20les,convertit%20le%20texte%20en%20nombres.
Assure toi d'avoir bien fait les manipulations correctement.
J'ai la version 2019 sous windows donc mon test n'aurait pas vraiment d'intérêt ^^ Si ca fonctionne chez moi ce serait une question de version et si ca fonctionne pas bon bha on est pas plus avancés x')
Si tu as le temps et les compétences je te conseille de créer une macro ou un petit logiciel qui supprime et réécris les cellules concernées correctement. C'est radical et pénible à mettre en place mais au moins c'est sûr de marcher.
Si tu as le temps et les compétences je te conseille de créer une macro ou un petit logiciel qui supprime et réécris les cellules concernées correctement. C'est radical et pénible à mettre en place mais au moins c'est sûr de marcher.
En fait, l'espace dans la colonne chiffres n'est pas un caractère «normal», celui créé par la barre d'espacement. J'ai même essayé via des convertisseurs en ligne : les chiffres sans espaces sont convertis correctement, mais pas les autres.
Si je supprime manuellement les espaces avant et entre les chiffres, ils sont automatiquement convertis, mais impossible de le faire en série. Donc, quand ça concerne des colonnes entières, c'est une vraie galère !
Apparemment, cet espace serait un code hexadécimal : Alt 0020. On peut le créer en passant par le clavier Universel (Unicode Hex) mais le problème, c'est qu'il n'est pas accepté dans les formules Excel.
Si je supprime manuellement les espaces avant et entre les chiffres, ils sont automatiquement convertis, mais impossible de le faire en série. Donc, quand ça concerne des colonnes entières, c'est une vraie galère !
Apparemment, cet espace serait un code hexadécimal : Alt 0020. On peut le créer en passant par le clavier Universel (Unicode Hex) mais le problème, c'est qu'il n'est pas accepté dans les formules Excel.
J'ai une possible solution mais c'est vraiiiiment du bricolage ...
Dans fichier => option => options avancées => Options d'édition tu as une coche "utiliser les séparateurs système". Tu peux la décocher et mettre le caractère problématique en question dans le séparateur des milliers.
Tu te doutes bien que ca va sûrement plus te poser de soucis que t'aider étant donné que l'espace normal ne fonctionnera alors plus ...
Un petit appel pour un programmeur en visual basic qui saurait faire un algo qui ressemble à ca :
En en faisant une macro il te resterait plus qu'alors à sélectionner les cases qui te dérangent et exécuter la macro (tu peux facilement mettre un racourci clavier dessus).
PS : Qu'on vienne pas me dire le code est nul y'a un problème dedans, c'est juste un algo écris à l'arrache hein je l'ai même pas relu
Dans fichier => option => options avancées => Options d'édition tu as une coche "utiliser les séparateurs système". Tu peux la décocher et mettre le caractère problématique en question dans le séparateur des milliers.
Tu te doutes bien que ca va sûrement plus te poser de soucis que t'aider étant donné que l'espace normal ne fonctionnera alors plus ...
Un petit appel pour un programmeur en visual basic qui saurait faire un algo qui ressemble à ca :
for each (Cellule c : user_selection){ //pour chaque case sélectionnée par l'utilisateur
String nb = ""; //La chaîne de la cellule mais sans le caractère problématique
double result; //Le nombre corrigé à écrire dans la cellule
for each (Char ch : c){ //pour chaque caractère de la chaîne contenue dans la case
if(!ch.equals(' ')){ // si le caractère n'est pas celui qui pose problème
nombre += ch; //bon je sais pas si en VB tu peux concaténer un String
// et un Char ainsi hein
}
}
result = valueOf(nb); //Méthode pour transformer un String en double ou integer
c = result; //Ecrire dans la cellule le résultat final.
}
En en faisant une macro il te resterait plus qu'alors à sélectionner les cases qui te dérangent et exécuter la macro (tu peux facilement mettre un racourci clavier dessus).
PS : Qu'on vienne pas me dire le code est nul y'a un problème dedans, c'est juste un algo écris à l'arrache hein je l'ai même pas relu
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Bonjour,
Votre fichier lu sur PC (après conversion en.xls) révèle des espaces insécables CAR(160).
1- avec Rechercher Remplacer
dans Rechercher saisir la combinaison Alt+0160 (0160, pas 160)
Dans Remplacer : un clic sans rien saisir
Clic sur le bouton Remplacer
En variante, au lieu de saisir Alt+ 0160 on peut coller un nombre à problème et effacer tous les caractères sauf un espace (soit celui du début soit celui qui sert de séparateur de milliers)
2- Dans une colonne libre entrer =SUBSTITUE(B1;CAR(160);"")*1
ou =SUBSTITUE(SUPPRESPACE(B1);CAR(160);"")*1 recopier. Si ça marche on peut revenir à la colonne B par collage spécial.
Attention au format des cellules!
Votre fichier lu sur PC (après conversion en.xls) révèle des espaces insécables CAR(160).
1- avec Rechercher Remplacer
dans Rechercher saisir la combinaison Alt+0160 (0160, pas 160)
Dans Remplacer : un clic sans rien saisir
Clic sur le bouton Remplacer
En variante, au lieu de saisir Alt+ 0160 on peut coller un nombre à problème et effacer tous les caractères sauf un espace (soit celui du début soit celui qui sert de séparateur de milliers)
2- Dans une colonne libre entrer =SUBSTITUE(B1;CAR(160);"")*1
ou =SUBSTITUE(SUPPRESPACE(B1);CAR(160);"")*1 recopier. Si ça marche on peut revenir à la colonne B par collage spécial.
Attention au format des cellules!
Merci pour votre réponse, mais dans ma version d'Excel, la combinaison Alt+0160 donne ce caractère => Š
Comme expliqué plus haut, j'ai essayé avec le code hexadécimal Alt 0020 pour l'espace : il se crée bien dans la zone de recherche de caractère, mais quand je lance le remplacement, ça dit qu'il n'y a pas de caractère correspondant dans la colonne. Un vrai casse-tête, ce truc !!!
Comme expliqué plus haut, j'ai essayé avec le code hexadécimal Alt 0020 pour l'espace : il se crée bien dans la zone de recherche de caractère, mais quand je lance le remplacement, ça dit qu'il n'y a pas de caractère correspondant dans la colonne. Un vrai casse-tête, ce truc !!!
Bonjour,
Puisque Excel me dit que ces chiffres sont du texte, je les ai copiés sur Word, puis j'ai fait un rechercher espace / remplacer par rien.
Le résultat obtenu, je l'ai copié sur Excel et j'ai obtenu ainsi des nombres et cela a l'air de marcher.
Vous pourriez essayer...
Cordialement.
Puisque Excel me dit que ces chiffres sont du texte, je les ai copiés sur Word, puis j'ai fait un rechercher espace / remplacer par rien.
Le résultat obtenu, je l'ai copié sur Excel et j'ai obtenu ainsi des nombres et cela a l'air de marcher.
Vous pourriez essayer...
Cordialement.
Histoire d'avoir un meilleur visuel, j'ai fait la manip en remplaçant l'espace copié par un A et le résultat a été vraiment tordu ! Le A s'est ajouté APRES l'espace, sans le remplacer, ce qui m'a donné par exemple : A29 A370.
Et ... je viens de réessayer ... et cette fois, ça a fonctionné !
Je n'y comprends vraiment rien : j'espère que ce ne sera pas le même bazar à chaque fois, mais quoi qu'il en soit, je vous remercie parce que j'avais renoncé à essayer une fois de plus. :)
Je vais mettre le post en Résolu mais j'avoue que j'aurais quand même bien aimé comprendre.
Vous avez vraisemblablement remplacé x par xA (x comme espace).
La boite de dialogue garde les dernières valeurs en "valeurs par défaut"; il est parfois difficile de remettre à zéro; de plus on se laisse facilement tromper par des espaces peu visibles.
Un autre piège survient avec Remplacer tout si on a oublié de de sélectionner un champ limité.
Mais encore merci ! :)