2012-04-16 20:39:25 +0000 2012-04-16 20:39:25 +0000
121
121

Pourquoi Excel traite-t-il de longues chaînes numériques comme une notation scientifique même après avoir changé le format des cellules en texte

J'essaie de traiter certaines données dans Excel. Ces données comprennent des numéros de compte numériques et d'autres longues chaînes numériques (comme les MEID des téléphones portables). Je ne fais pas d'opérations mathématiques sur ces chaînes, donc je veux qu'Excel les traite comme du texte simple.

Voici ce qui me rend fou (c'est Excel 2010) :

  1. Prenez un long nombre comme 1240800388917 et collez-le dans une cellule d'une nouvelle feuille de calcul.
  2. Le format de cellule par défaut d'Excel est général, donc la chaîne est présentée en notation scientifique comme 1.2408E+12
  3. Cliquez avec le bouton droit de la souris sur la cellule, sélectionnez Formater les cellules, réglez le format sur Texte

La cellule est toujours affichée en notation scientifique, même si le format a été réglé sur texte.

Maintenant, si je fais les étapes dans un ordre différent :

  1. Formatez une cellule vide en texte. Faites un clic droit sur la cellule, sélectionnez Formater les cellules, réglez le format sur Texte
  2. Prenez un nombre long comme 1240800388917 et collez-le dans la cellule formatée en texte

Maintenant, la cellule est affichée comme une chaîne et non en notation scientifique.

Les résultats restent en notation scientifique même si la cellule est formatée en texte me semble juste cassée. J'ai vu des suggestions de contournement comme : utiliser l'importation CSV et définir le format pour le texte, ajouter un caractère d'espacement au début de chaque chaîne numérique, et d'autres encore.

Existe-t-il une solution simple et efficace pour conserver facilement ces chaînes sous forme de texte ?

Pourquoi diable Excel fait-il cela ?

Questions SU connexes que j'ai trouvées Comment pouvez-vous faire en sorte qu'Excel 2007 cesse de formater de grands nombres en notation scientifique ? et Ce comportement d'Excel avec un grand nombre hexadécimal est-il attendu ?

Réponses (13)

171
171
171
2014-07-23 10:53:47 +0000

Cela a fonctionné pour moi dans Excel 2010. Il suffit de sélectionner la colonne, de faire un clic droit, de formater les cellules, de personnaliser et de choisir l'option qui indique 0 (deuxième option sous Général).

23
23
23
2012-04-16 23:45:51 +0000

Ah, des souvenirs de grignotage de données depuis que j'ai fait des recoupements massifs de chiffres dans Excel (plus jamais)… Lorsque vous tapez de longues chaînes de chiffres dans Excel, disons 12345678901234567890 (20 chiffres), Excel les convertit généralement pour vous, ce qui signifie que le nombre à 20 chiffres que vous venez de taper a été réduit à une quinzaine de chiffres significatifs.

Remarque également : la conversion est une troncature, par opposition à un arrondi. (12345678901234567890 est 1.2345678901234 6 E+19, mais excel vous montrera 1.2345678901234 5 E+19)

Cela se produit au point d'entrée, donc une fois que c'est entré, tout détail supplémentaire est perdu, et donc même si vous dites à Excel que vous vouliez vraiment dire que c'est du texte, et non un nombre, vous n'avez pas de chance, et donc pourquoi votre première séquence ne fonctionne pas.

13
13
13
2012-09-28 16:44:58 +0000

J'ai constaté que dans Office 2010, si vous formatez d'abord la colonne, puis collez les données, les grands chiffres s'afficheront correctement.

13
13
13
2012-04-16 21:01:00 +0000

Une simple apostrophe ‘ devant un nombre obligera Excel à traiter un nombre comme du texte (y compris un alignement à gauche par défaut). Et si des erreurs sont signalées, il s'affichera comme un nombre stocké en tant qu'erreur de texte dans la cellule.

12
12
12
2013-07-05 07:44:11 +0000

Essayez ceci… cela fonctionne pour moi, Excel 2013.

=""&a1

où a1 contient la valeur numérique. Ensuite, copiez la colonne et collez la dans la colonne d'origine.

6
6
6
2016-11-03 17:38:40 +0000

Je suis conscient de l'âge de la question, mais c'est celle que j'ai trouvée après une recherche sur Google et qui ne répondait pas à ma question (pourquoi le formatage en texte ne fonctionne pas et pourquoi le numéro est réduit à 15 chiffres après le formatage en texte).

La réponse courte est : vous ne pouvez pas travailler sur votre numéro comme vous le souhaitez APRÈS avoir entré la valeur numérique et appuyé sur Enter. Au moment où vous le faites, le numéro sera tronqué à 15 chiffres et présenté comme exponentiel.

Ce n'est pas un bug, c'est une fonctionnalité.

Tout ce que vous ferez après cela utilisera la valeur tronquée, donc aucune astuce de formatage ne sera utile. Cependant, vous pouvez utiliser l'option Text to columns pour convertir la notation exponentielle en texte (Cliquez sur l'en-tête de colonne, cliquez sur Text to data, puis sur Delimited, Next, décochez toutes les cases de délimitation, sélectionnez Text dans Column data format et ensuite Finish) pour que les valeurs soient converties en texte et immédiatement affichées sous forme de nombre à 15 chiffres. Mais, il n'y aura que 15 chiffres, donc si vous aviez un nombre plus long, le reste est perdu.

Pour que le nombre dans le tableur soit exactement comme vous l'avez tapé, vous devez le stocker comme texte. Vous devez donc le faire précéder d'une apostrophe ou formater les cellules en tant que texte avant de taper/copier les valeurs dans la feuille. Si cela “ne fonctionne pas parfois”, alors, désolé, soit vous faites quelque chose de mal, soit vous avez une sorte d'autocorrection (si vous utilisez une apostrophe et un grand nombre >15 chiffres, Excel le traite comme une mauvaise valeur et signale la cellule avec un message d'avertissement, donc cette remarque n'est ni personnelle ni critique).

Une autre façon de le faire en masse est d'importer des valeurs depuis un fichier texte. J'ose dire que c'est la seule façon de faire dans la plupart des cas. Et assurez-vous d'importer le fichier, et pas seulement de l'ouvrir, car Excel traite le type csv comme s'il s'agissait de son format natif et réduit les grands nombres à 15 chiffres, comme une évidence.

Maintenant, passons au dernier numéro. Si vous entrez une grande valeur numérique dans une cellule Excel formatée comme du texte, elle sera toujours affichée en notation scientifique tant que la cellule n'est pas assez large. C'est ennuyeux, mais c'est un effet secondaire de certains algorithmes internes d'Excel. Il suffit d'élargir la cellule et vous verrez la valeur complète à chaque fois.

5
5
5
2014-07-02 15:02:30 +0000

Vous pouvez formater les cellules comme Custom > #

Ceci peut être appliqué après avoir collé les données dans la colonne, mais vous devez le faire avant de sauvegarder la feuille de calcul.

Je travaille beaucoup avec les codes barres (UPC) et excel les formatera comme notation scientifique par défaut. Ça me rend dingue ! Pourquoi ce n'est pas une option que je ne connaîtrai jamais.

3
3
3
2013-08-14 22:15:18 +0000

Excel 2010 : Il fonctionne une colonne à la fois et pas du tout pour une ligne. Sélectionnez la colonne ou le sous-ensemble d'une colonne, dans l'onglet Données, sélectionnez “Texte aux colonnes”, et passez directement à “Terminer”. Plus de notation scientifique.

Je suis d'accord avec les nombreux utilisateurs d'Excel, c'est criminel qu'il n'y ait aucune option pour empêcher la notation scientifique !

1
1
1
2018-02-28 21:47:55 +0000

Excel est frustrant pour le travail de données en vrac et en format CSV comme celui-ci. Travaillez avec LibreOffice si possible, il ne le fait pas, c'est-à-dire que si vous ouvrez la même feuille (.xlsx) dans Libreoffice, les grands “nombres” qui sont en fait des chaînes de caractères ne sont pas affichés en notation scientifique (ce qui est une décision absurde d'Excel). La fidélité des fichiers de LibreOffice est excellente : ouvrez à nouveau le même .xlsx dans Excel, et la notation scientifique “fonctionne” instantanément, comme d'habitude.

1
1
1
2015-10-21 19:48:37 +0000

Dans Excel 2013, la même chose m'est arrivée et je suis juste allé dans Format Cells -> Number puis je me suis assuré que la décimale est bien à “0”.

0
0
0
2013-09-27 18:39:24 +0000
  1. Copier/coller le champ du problème dans la nouvelle feuille de la colonne A

  2. Copier/coller la colonne A dans le fichier texte

  3. Formater la colonne B en fichier texte et coller le fichier texte dans la colonne B

  4. Dans la colonne C :

  5. Convertir la colonne C en un format numérique sans décimales

  6. Copier/coller la colonne C dans un fichier texte

  7. Formater la colonne D dans un fichier texte et coller le fichier texte dans la colonne D

  8. Dans la colonne E :

  9. Copier/coller la Colonne E dans le bloc-notes

  10. Effacer les données du champ de problème et formater la colonne en texte

  11. Copier/coller les données du fichier texte dans le champ du problème

0
0
0
2014-01-28 22:58:15 +0000

Cela a fonctionné pour moi dans Excel 2013, y compris le copier-coller des cellules vers d'autres programmes. Le filtrage des données m'a aidé, surtout pour les étapes d'édition.

  1. Sélectionnez la ou les cellules de votre choix.
  2. Appliquez le format numérique “Texte”. (Essayez Alt, H, N, puis “Texte”.)

Ensuite, pour chacune des cellules souhaitées :

  1. Entrez en mode édition. (Essayez F2.)
  2. Confirmez votre modification en appuyant sur la touche Entrée (valable pour les colonnes) ou sur la touche Tab (valable pour les lignes). Ne modifiez pas le contenu.

Votre numéro apparaîtra normalement, même à 100 chiffres. =)

0
0
0
2012-04-17 05:40:42 +0000

Sélectionnez toutes les cellules - ou, pour faciliter les choses, sélectionnez toute la feuille de calcul et cliquez sur Format Cells, puis Text.

Automatiquement, toute votre feuille de calcul utilisera du texte. Vous n'avez pas besoin de le faire cellule par cellule.