Por qué Excel quita los ceros a la izquierda y cómo conservarlos
Pegas una lista de clientes y el código postal 08001 se convierte en 8001. Un teléfono pasa a ser 3,49E+10. Un número de tarjeta o de pedido de 16 dígitos acaba en 0 cuando no debería. La causa es siempre la misma, y se puede evitar.
Por qué pasa
Cuando una celda recibe algo formado solo por dígitos, Excel decide que es un número. Un número no tiene ceros a la izquierda, así que 08001 se guarda como 8001. Hay dos reglas más que lo empeoran:
- En formato General, los números largos se muestran en notación científica: 34934567890 aparece como 3,49E+10 cuando no cabe en la columna, y a partir de 12 dígitos pasa siempre.
- Excel solo guarda 15 dígitos significativos. A partir del 16.º, el resto se convierte en ceros, y no es solo cómo se ve: el valor se pierde.
| Lo que muestra la página | Lo que guarda Excel |
|---|---|
| Código postal 08001 | 8001 |
| Factura 000127 | 127 |
| Teléfono 0034934567890 | 3,49E+10 |
| Pedido 4012888888881881 | 4012888888881880 |
Un código no es un número: nadie suma códigos postales. Tiene que quedarse como texto, tal como está escrito.
Cómo conservar los ceros
Antes de pegar: pon la columna en formato Texto
- Selecciona las columnas que van a recibir códigos.
- Clic derecho › › Aceptar.
- Pega desde eligiendo la opción que adapta lo pegado al formato de destino, para que se mantenga el formato Texto.
Funciona, pero tienes que acordarte antes de cada pegado y elegir bien las columnas: si pones por error los importes en Texto, dejan de sumar.
Al importar: elige el tipo de columna
Si los datos vienen de un archivo CSV o de la opción , abre y pon las columnas de códigos en Texto antes de cargar. En el Asistente para importar texto, la misma elección está en el último paso, en .
Desactiva la conversión (Microsoft 365)
Las versiones recientes de Excel (Microsoft 365 y Excel 2024) permiten desactivar este comportamiento: , desmarca Eliminar los ceros a la izquierda y convertir a número y también la opción de conservar solo los primeros 15 dígitos. En Mac: . Se aplica a todo lo que escribes y pegas, así que los códigos se quedan como están; los números que de verdad son números se siguen reconociendo.
¿Ya se han perdido? Recupéralos con TEXTO
Si la columna tiene siempre la misma longitud (un código postal de 5 dígitos), puedes volver a poner los ceros con una fórmula: =TEXTO(A2;"00000"), con tantos ceros como dígitos tenga el código. Si tu Excel separa los argumentos con coma en lugar de punto y coma, escribe =TEXTO(A2,"00000"). También puedes usar el formato de número personalizado 00000, que muestra los ceros aunque el valor siga siendo un número. Ninguna de las dos cosas recupera los dígitos perdidos a partir del 15.º: esos ya no vuelven.
No lo arregles a mano con un apóstrofo. Escribir '08001 sirve para una celda, no para 3.000 filas. Y no ayuda con una lista que vuelves a exportar cada semana.
O deja que lo haga la exportación
Botón Exportar reconoce los códigos antes de escribir el archivo: los valores con ceros a la izquierda y las secuencias largas de dígitos (teléfonos, números de identificación fiscal, números de pedido) se escriben como texto, exactamente como en la página. En las columnas llamadas CP, Código, Factura, Pedido, NIF y similares, los números se escriben sin separador de miles, así que 10045 no se convierte en 10.045. Los importes y las cantidades de al lado siguen siendo números de verdad que puedes sumar. Nada que configurar columna por columna.
Exporta sin perder ni un cero
Gratis para una tabla cada vez, sin cuenta, y nada sale de tu navegador.