
Una fecha puede verse perfectamente correcta en Excel y aun así comportarse de forma distinta cuando la copias en otra aplicación. Puedes ver 2026-01-01 en una hoja de cálculo y, sin embargo, obtener un número al combinarla con texto o cambiar el formato de su celda.
Eso ocurre porque Excel almacena las fechas como números. Su apariencia proviene del formato de número aplicado a la celda.
Cuando necesitas una cadena de fecha específica para un informe, una plantilla de importación o otro sistema, convertir la fecha a texto te da control sobre el resultado.
Esta guía abarca cuatro enfoques, desde introducir una sola fecha manualmente hasta convertir una columna entera con Python.
Antes de empezar: formato de fecha frente a conversión a texto
Cambiar el aspecto de una fecha no cambia su tipo subyacente.
Por ejemplo, aplicar el formato personalizado yyyy-mm-dd hace que una fecha aparezca como 2026-01-01, pero Excel sigue almacenando un valor de fecha numérico. Convertirla a texto produce la cadena real 2026-01-01. La función TEXT de Excel realiza esta conversión mientras aplica un formato especificado.
| Acción | Apariencia | Valor subyacente |
|---|---|---|
| Aplicar un formato de fecha personalizado | 2026-01-01 | Valor de fecha numérico |
| Convertir la fecha a texto | 2026-01-01 | Cadena de texto |
Para los ejemplos siguientes, imagina una hoja de cálculo de pedidos con estas columnas:
| Fecha del pedido | ID del pedido | Cliente | Producto | Cantidad |
|---|---|---|---|---|
| 2026-01-01 | ORD-1003 | Harbor Logistics | SSD portátil 1 TB | 2 |
| 2026-01-09 | ORD-1004 | Summit Education | Concentrador USB-C | 8 |
| 2026-02-14 | ORD-1005 | Bluebird Trading | Cámara web | 4 |
Las fechas están en la columna A, con un encabezado en la fila 1.
Conserva una copia del libro de trabajo original antes de probar métodos que reemplacen los valores existentes. Conservar las fechas originales resulta útil si más adelante necesitas realizar cálculos con fechas.
Método 1: Introducir fechas como texto con un apóstrofo
Para unas pocas fechas introducidas manualmente, agrega un apóstrofo (') antes de la fecha:
'2026-01-01
Presiona Intro, y la celda mostrará:
2026-01-01
El apóstrofo indica a Excel que trate la entrada como texto. No aparece como parte del contenido mostrado en la celda. Microsoft documenta este enfoque como una forma de evitar la conversión automática de fechas.
Puedes escribir la representación exacta que necesites:
| Qué escribes | Qué muestra la celda |
|---|---|
'2026-01-01 |
2026-01-01 |
'01/09/2026 |
01/09/2026 |
'20260101 |
20260101 |
Ideal para: introducir una pequeña cantidad de cadenas de fecha en una plantilla.
Este método es rápido, pero requiere introducción o edición manual. Para una columna existente que contiene cientos de fechas, usa uno de los siguientes enfoques.
Método 2: Convertir fechas a texto con la función TEXT
La función TEXT es la opción de hoja de cálculo más flexible cuando quieres controlar el formato de salida.
Supón que A2 contiene una fecha válida de Excel. Introduce esta fórmula en una celda vacía:
=TEXT(A2,"yyyy-mm-dd")
La fórmula devuelve una cadena de texto como:
2026-01-01

Luego arrastra el controlador de relleno hacia abajo para convertir las fechas restantes. TEXT toma el valor original y aplica el código de formato que proporciones.
Elige un formato de fecha
Cambia el segundo argumento para producir una representación de fecha diferente:
| Fórmula | Resultado de ejemplo |
|---|---|
=TEXT(A2,"yyyy-mm-dd") |
2026-01-01 |
=TEXT(A2,"mm/dd/yyyy") |
01/01/2026 |
=TEXT(A2,"dd/mm/yyyy") |
01/01/2026 |
=TEXT(A2,"yyyymmdd") |
20260101 |
Usar mm y dd conserva los ceros iniciales, lo que ayuda cuando otro sistema espera un valor de longitud fija.
Si la columna de origen contiene celdas en blanco, usa:
=IF(A2="","",TEXT(A2,"yyyy-mm-dd"))
Esto deja el resultado vacío cuando la celda de origen está en blanco.
Reemplazar fórmulas con texto estático
El resultado de la fórmula permanece vinculado a la fecha original. Si necesitas valores de texto independientes:
- Selecciona las celdas que contienen las fórmulas TEXT.
- Presiona Ctrl+C.
- Haz clic derecho en la celda de destino.
- Elige Pegado especial → Valores.
Las celdas pegadas ahora contienen las cadenas resultantes en lugar de fórmulas. Si vas a reemplazar la columna de fechas original, completa este paso antes de eliminar los datos de origen.
Ideal para: convertir fechas existentes en un formato preciso mientras mantienes el proceso visible en la hoja de cálculo.
Método 3: Convertir fechas a texto usando Texto en columnas
A pesar de su nombre, Texto en columnas se puede usar sin dividir una columna. El paso final del asistente te permite elegir Texto como tipo de salida. La comunidad de soporte de Microsoft incluye este flujo de trabajo para convertir fechas a texto.
Para probarlo con la hoja de cálculo de pedidos:
- Selecciona las celdas de fecha de la columna A, excluyendo el encabezado.
- Abre Datos → Texto en columnas.
- Selecciona Delimitados y luego haz clic en Siguiente.
- Desmarca todas las casillas de delimitadores para que las fechas permanezcan en una sola columna.
- Haz clic en Siguiente de nuevo.
- En Formato de los datos de columna, selecciona Texto.
- Establece Destino en una columna vacía, como
$H$2. - Haz clic en Finalizar.
Usar una columna de destino vacía te permite comparar el resultado con las fechas de origen antes de reemplazar nada.

La limitación principal es el control del formato. Texto en columnas no proporciona una cadena de formato como yyyy-mm-dd. La representación de fecha resultante puede depender de la configuración regional de fecha, así que revisa la salida en lugar de asumir que conserva un formato de celda personalizado.
Si el destino debe contener exactamente 20260101 o 2026-01-01, la función TEXT te ofrece una regla de conversión más explícita.
Ideal para: una conversión única cuando quieres texto estático sin introducir fórmulas.
Método 4: Automatizar la conversión de fechas a texto con Python
Los pasos manuales funcionan bien para tareas ocasionales. Un script resulta útil cuando la misma conversión debe ejecutarse repetidamente como parte de un proceso de informes o exportación.
Spire.XLS for Python puede leer, editar y guardar libros de Excel sin requerir que Microsoft Excel esté instalado. En este ejemplo, lee fechas de la columna A y las reemplaza con cadenas de texto con formato.
Instalar Spire.XLS for Python
Instala el paquete desde tu terminal:
pip install Spire.XLS
Convertir una columna de fechas a texto
El siguiente código procesa la columna A de la primera hoja de cálculo, comenzando en la fila 2 para omitir el encabezado:
from spire.xls import Workbook, FileFormat
# 1. Load the workbook
workbook = Workbook()
workbook.LoadFromFile("Excel_Date.xlsx")
# 2. Get the first worksheet
sheet = workbook.Worksheets.get_Item(0)
# 3. Loop through column A
last_row = sheet.Columns[0].LastRow
for i in range(2, last_row + 1):
cell = sheet.Range.get_Item(i, 1)
# Read the cell as a date object
date_value = cell.DateTimeValue
# Convert the date to a formatted string
text_date = date_value.ToString("yyyy-MM-dd")
# Set the cell format to Text, then write the string
cell.NumberFormat = "@"
cell.Text = text_date
# 4. Save the output workbook
workbook.SaveToFile(
"FormattedDates.xlsx",
FileFormat.Version2016
)
workbook.Dispose()
Coloca Excel_Date.xlsx en el directorio de trabajo del script, o reemplaza el nombre del archivo de entrada por su ruta completa.
Este ejemplo supone que cada celda procesada contiene una fecha válida. Para una columna que contenga celdas en blanco, notas o valores no válidos, agrega una validación antes de leer DateTimeValue.
La captura de pantalla siguiente compara los valores de fecha originales con las cadenas de texto generadas por el script de Python:

Comprender los pasos clave
Tres operaciones realizan la conversión:
date_value = cell.DateTimeValue
Esto lee el valor de fecha de la celda de origen.
text_date = date_value.ToString("yyyy-MM-dd")
Esto produce la cadena deseada. El formato usa MM en mayúsculas para el mes.
cell.NumberFormat = "@"
cell.Text = text_date
Estas líneas establecen la celda en formato de texto y escriben la cadena con formato. Escribir la cadena es esencial: cambiar solo el formato de número no realiza la misma conversión.
El script guarda un libro de salida separado, dejando el archivo de entrada disponible para comparación. Procesa una columna en una hoja de cálculo; la misma lógica se puede colocar más adelante dentro de bucles de hojas de cálculo o de archivos para una automatización más amplia.
Ideal para: conversiones repetibles que forman parte de un flujo de trabajo de Python.
¿Qué método deberías elegir?
Elige según cómo lleguen los datos y con qué frecuencia necesites procesarlos.
| Método | Mejor uso | Control del formato | Salida |
|---|---|---|---|
| Apóstrofo | Unas pocas fechas introducidas manualmente | El texto exacto que escribes | Texto estático |
| Función TEXT | Fechas existentes que necesitan un formato específico | Código de formato explícito | Resultado de fórmula; opcionalmente pegado como valores |
| Texto en columnas | Conversión única sin fórmulas | Limitado | Texto estático |
| Python | Conversión repetida en un script | Cadena de formato explícita | Texto escrito en el libro de salida |
Para el trabajo diario en hojas de cálculo, TEXT suele ser el punto de partida más sólido porque la regla de conversión es fácil de ver y ajustar.
Usa un apóstrofo cuando introduzcas unos pocos valores, Texto en columnas para una conversión rápida cuyo formato de salida hayas revisado, y Python cuando la tarea necesite convertirse en un proceso repetible.
Preguntas frecuentes
¿Por qué al cambiar el formato de una celda de fecha a Texto se muestra un número?
Excel almacena las fechas como valores numéricos. Cambiar el formato de la celda a Texto no convierte ese valor en una cadena de fecha con formato.
Usa TEXT(A2,"yyyy-mm-dd") para generar la cadena que deseas.
¿Cómo puedo comprobar si una fecha convertida es realmente texto?
Usa la función ISTEXT:
=ISTEXT(A2)
Devuelve TRUE cuando A2 contiene texto y FALSE cuando contiene un valor de fecha numérico. Esto es más fiable que juzgar por la apariencia de la celda.
¿Todavía puedo calcular con fechas después de convertirlas a texto?
Las cadenas de texto no se comportan de forma tan consistente como las fechas nativas en los cálculos. Algunas fórmulas pueden interpretar cadenas reconocibles, pero esa interpretación puede depender de su formato y de la configuración regional.
Conserva la columna de fechas original si necesitas calcular intervalos, agrupar registros por mes o realizar otras operaciones con fechas.
¿Cómo mantengo los ceros iniciales en el texto de fecha?
Usa componentes de mes y día de dos dígitos. Por ejemplo:
=TEXT(A2,"yyyy-mm-dd")
En el ejemplo de Python, usa:
date_value.ToString("yyyy-MM-dd")
Ambos producen un valor como 2026-01-09, conservando los ceros en el mes y el día.