4 formas de formatear fechas como texto en Excel: manuales y automatizadas

2026-11-04 02:11:57 Jack Du
AI Summarize:
ChatGPT
ChatGPT ✓
Claude ✓
Grok ✓
Perplexity ✓
Quick
Quick
Concise overview
Highlights
Key takeaways
Detailed
Structured explanation
Brief
One sentence summary
Summarize |

Convert Dates to Text in Excel

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

Convert Dates to Text with the TEXT Function

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:

  1. Selecciona las celdas que contienen las fórmulas TEXT.
  2. Presiona Ctrl+C.
  3. Haz clic derecho en la celda de destino.
  4. 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:

  1. Selecciona las celdas de fecha de la columna A, excluyendo el encabezado.
  2. Abre Datos → Texto en columnas.
  3. Selecciona Delimitados y luego haz clic en Siguiente.
  4. Desmarca todas las casillas de delimitadores para que las fechas permanezcan en una sola columna.
  5. Haz clic en Siguiente de nuevo.
  6. En Formato de los datos de columna, selecciona Texto.
  7. Establece Destino en una columna vacía, como $H$2.
  8. 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.

Convert Dates to Text Using Text to Columns

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:

Convert Dates to Text Using 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.

Ver también