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

¿Por qué Excel trata las largas cadenas numéricas como notación científica incluso después de cambiar el formato de la celda a texto

Estoy tratando de procesar algunos datos en Excel. Los datos incluyen números de cuenta numéricos y otras cadenas numéricas largas (como los MEID de los teléfonos móviles). No estoy haciendo operaciones matemáticas en estas cadenas, así que quiero que Excel las trate como texto plano.

Esto es lo que me está volviendo loco (esto es Excel 2010):

  1. Toma un número largo como 1240800388917 y pégalo en una celda de una nueva hoja de cálculo.
  2. El formato de celda por defecto de Excel es general, por lo que la cadena se presenta en notación científica como 1.2408E+12
  3. Haga clic con el botón derecho del ratón en la celda, seleccione Formato de celdas, establezca el formato como Texto

La celda se sigue mostrando en notación científica, aunque el formato se haya establecido como texto.

Ahora, si hago los pasos en un orden diferente:

  1. Formatear una celda vacía como texto. Haz clic con el botón derecho del ratón en la celda, selecciona Formato de celdas, establece el formato como texto
  2. Toma un número largo como 1240800388917 y pégalo en la celda con formato de texto

Ahora, la celda se muestra como una cadena y no en notación científica.

Los resultados permanecen en notación científica aunque la celda esté formateada como texto me parece que está rota. He visto sugerencias como: usar la importación CSV y establecer el formato como texto, añadir un espacio al principio de cada cadena numérica, y otras.

¿Existe un buen trabajo sencillo para mantener fácilmente estas cadenas formateadas como texto?

¿Por qué demonios hace esto Excel?

Preguntas relacionadas con la SU que he encontrado [ ¿Cómo puedes hacer que Excel 2007 deje de formatear grandes números como notación científica? (https://superuser.com/questions/37975/how-can-you-make-excel-2007-stop-formatting-large-numbers-as-scientific-notation) y ¿Se espera este comportamiento de Excel con un gran número hexadecimal?

Respuestas (13)

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

Esto funcionó para mí en Excel 2010. Sólo tienes que seleccionar la columna, hacer clic con el botón derecho, Formato de celdas, Personalizar y elegir la opción que dice 0 (segunda opción debajo de General).

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

Ah, recuerdos de datos que se acumulan desde que hice una comprobación cruzada de números en Excel (nunca más)… Cuando introduces largas cadenas numéricas en Excel, por ejemplo, 12345678901234567890 (20 dígitos), Excel generalmente lo _convierte para ti, lo que significa que el número de 20 dígitos que acabas de introducir se ha reducido a sólo unas quince cifras significativas.

Nota también: la conversión es un truncamiento, en lugar de un redondeo. (12345678901234567890 es 1.2345678901234 6 E+19, pero Excel te mostrará 1.2345678901234 5 E+19)

Esto ocurre en el punto de entrada, así que una vez que está dentro, cualquier detalle adicional se pierde, e incluso si le dices a Excel que realmente querías decir que era texto, y no un número, no tienes suerte, y por lo tanto por qué tu primera secuencia no funciona.

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

Encontré que en Office 2010, si formateas la columna primero, y luego pegas los datos, se mostrarán los números grandes correctamente.

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

Un solo apóstrofe ‘ antes de un número obligará a Excel a tratar un número como texto (incluyendo un alineamiento izquierdo por defecto). Y si tiene errores marcados, se mostrará como un número almacenado como error de texto en la celda.

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

Prueba esto… esto funciona para mí, Excel 2013.

=""&a1

donde a1 tiene el valor numérico. Después, copia la columna y pégala en la columna original.

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

Soy consciente de la antigüedad de la pregunta, pero esta es la que he aterrizado después de la búsqueda en Google y que no respondió a mi pregunta (por qué el formato como texto no funciona y por qué el número se reduce a 15 dígitos después del formato como texto).

La respuesta corta es: no puedes trabajar en tu número de la manera que quieras DESPUÉS de introducir el valor numérico y tocar Enter. En el momento en que lo haga, el número será truncado a 15 dígitos y presentado como exponencial.

Esto no es un error, es una característica.

Cualquier cosa que haga después de eso estará usando el valor truncado, así que ningún truco de formato ayudará. Sin embargo, puedes usar la opción Text to columns para convertir la notación exponencial en texto (Haz clic en el encabezado de la columna, haz clic en Text to data, luego Delimited, Next, desmarca todos los cuadros delimitadores, Selecciona Text en Column data format y luego Finish) para que los valores se conviertan en texto y se muestren inmediatamente como un número de 15 dígitos. Pero, sólo serán 15 dígitos, así que si tenías un número más largo, el resto se pierde.

Para tener el número en la hoja de cálculo exactamente de la forma en que lo escribiste tienes que almacenarlo como texto. Así que tienes que precederlo con un apóstrofe o formatear las celdas como texto antes de escribir/copiar valores en él. Si “a veces no funciona”, entonces, lo siento, o haces algo mal o tienes algún tipo de autocorrección activada (si usas el apóstrofe y un número grande >15 dígitos Excel lo trata como un valor equivocado y marca la celda con un mensaje de advertencia, por lo que esta observación no es personal ni crítica).

Otra forma de hacerlo en números masivos es importar valores desde un archivo de texto. Me atrevo a decir que es la única manera para la mayoría de las situaciones. Y asegúrese de importar el archivo, no sólo abrirlo, ya que Excel trata el tipo csv como si fuera su formato nativo y recorta los números grandes a 15 dígitos de forma natural.

Ahora, hasta el último número. Si introduce un valor numérico grande en una celda de Excel formateada como texto, seguirá mostrándose en notación científica siempre que la celda no sea lo suficientemente ancha. Es molesto, pero es un efecto secundario de algunos algoritmos internos de Excel. Sólo tienes que hacer la celda más ancha y verás el valor completo cada vez.

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

Puedes dar formato a las celdas como Personalizadas > #

Esto se puede aplicar después de pegar los datos en la columna, pero debes hacerlo antes de guardar la hoja de cálculo.

Trabajo mucho con códigos de barras (UPC’s) y Excel los formateará como notación científica por defecto. ¡Me vuelve loco! Nunca sabré por qué no es una opción.

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

Excel 2010: Esto funciona una columna a la vez y no en absoluto para una fila. Selecciona la columna o el subconjunto de una columna, en la pestaña de Datos selecciona “Texto a Columnas”, y salta a la derecha a “Terminar”. No más notación científica.

Estoy de acuerdo con los muchos usuarios de Excel, ¡es un crimen que no haya opción para evitar la notación científica!

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

Excel es frustrante para el trabajo de datos de CSV/bulk como este. Trabaja con LibreOffice si es posible, no lo hace, es decir, si abres la misma hoja (.xlsx) en Libreoffice, los grandes “números” que son en realidad cadenas no se muestran en notación científica (lo cual es una decisión absurda de Excel). La fidelidad de los archivos de LibreOffice es grande: si se abre de nuevo la misma .xlsx en Excel, la notación científica “funciona” instantáneamente como de costumbre.

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

En el Excel 2013, me pasó lo mismo y fui a Formato de Celdas -> Número y luego me aseguré de que el decimal esté en “0”.

0
0
0
2013-09-27 18:39:24 +0000
  1. Copiar/pegar el campo del problema en la nueva hoja de la columna A

  2. Copiar/pegar la columna A en el archivo de texto

    1. Formatear la Columna B a texto y pegar el archivo de texto en la Columna B
  3. En la Columna C:

  4. Convertir la Columna C en un formato de número sin decimales

  5. Pegar la Columna A en un archivo de texto

  6. Copiar/pegar la Columna C en un archivo de texto

  7. Formatear la Columna D en texto y pegar el archivo de texto en la Columna D

  8. En la Columna E:

  9. En la Columna E:

  10. Copiar/pegar la columna E en el bloc de notas

  11. Eliminar los datos del campo del problema y dar formato a la columna en el texto

  12. Copiar/pegar la columna C en el archivo de texto

  13. Copiar/pegar datos del archivo de texto al campo del problema

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

Esto funcionó para mí en Excel 2013, incluyendo copiar-pegar las células a otros programas. Filtrar los datos ayudó, especialmente para los pasos de edición.

  1. Selecciona la celda o celdas que desees.
  2. 2. Aplicar el formato de número “Texto”. (Intenta Alt, H, N, y luego “Texto”.)

Luego, para cada una de las celdas deseadas:

  1. 1. Entra en el modo de edición. (Intente F2.)
  2. 2. Confirma tu edición con Enter (bueno para las columnas) o Tab (bueno para las filas). No altere el contenido.

Su número aparecerá normalmente, incluso con 100 dígitos. =)

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

Selecciona todas las celdas o, para facilitar las cosas, selecciona toda la hoja de cálculo y haz clic en Formato de celdas, y luego en Texto.

Automáticamente, toda la hoja de cálculo usará texto. No tienes que hacerlo celda por celda.