Cómo convertir texto a fecha en Excel (5 métodos prácticos)

2026-11-05 07:27:37 alice yang
AI Summarize:
ChatGPT
ChatGPT ✓
Claude ✓
Grok ✓
Perplexity ✓
Quick
Quick
Concise overview
Highlights
Key takeaways
Detailed
Structured explanation
Brief
One sentence summary
Summarize |

Guide to converting text dates into actual Excel dates

Cuando se importan fechas desde archivos CSV, bases de datos u otras aplicaciones, Excel puede almacenarlas como texto en lugar de como valores de fecha reales. Esto puede causar problemas con la ordenación cronológica, los filtros de fecha y los cálculos, incluso cuando las fechas parecen correctas.

Puede convertir texto a fecha en Excel usando Texto en columnas, fórmulas, Power Query o automatización con C#. El mejor enfoque depende del formato de fecha de origen y de si está realizando una conversión única o gestionando un flujo de trabajo recurrente.

Elegir el método correcto para convertir texto a fecha

Antes de empezar, elija el método que mejor se adapte a sus datos de origen y a sus necesidades de conversión.

Su situación Método recomendado
Una columna de fechas de texto en un formato coherente, como 15/01/2026 Use Texto en columnas y seleccione el orden de fecha correcto, como DMA. Ver pasos
Fechas de texto reconocibles, como 15-Jan-2026 Use DATEVALUE para convertir el texto en un valor de fecha de Excel. Ver pasos
Fechas en un formato fijo o personalizado, como 20260115 Use DATE con funciones de texto como LEFT, MID y RIGHT para extraer los componentes de la fecha. Ver fórmulas
Fechas importadas que usan una convención regional diferente En Power Query, use Cambiar tipo > Usar configuración regional. Ver pasos
Fechas que necesitan conversión en flujos de trabajo automatizados de Excel Use C# para analizar fechas de texto y escribir valores de fecha reales de Excel. Ver código

¿No está seguro de si las fechas están almacenadas como texto? De forma predeterminada, el texto suele estar alineado a la izquierda en Excel, mientras que los valores de fecha reales se alinean a la derecha. Sin embargo, la alineación por sí sola no es un indicador fiable. Para comprobarlo, escriba =ISNUMBER(A2) en una celda vacía. Excel almacena las fechas reconocidas como números, por lo que FALSO indica que la celda no es numérica. Si contiene una cadena con aspecto de fecha, se almacena como texto. VERDADERO significa que el valor es numérico, pero no prueba por sí mismo que represente la fecha prevista.

Si necesita la operación inversa, consulte nuestra guía sobre dar formato a fechas como texto en Excel.

Método 1: Convertir texto a fecha usando Texto en columnas

Use este método cuando: desee convertir una columna completa de fechas de texto sin fórmulas, especialmente cuando las fechas siguen un orden coherente de día-mes-año o mes-día-año.

Aunque se usa habitualmente para dividir texto en columnas separadas, la función Texto en columnas de Excel también puede convertir fechas almacenadas como texto en valores de fecha reales de Excel.

Guía paso a paso

  1. Seleccione las celdas que contienen las fechas de texto en una columna.

  2. Vaya a Datos > Texto en columnas, en el grupo Herramientas de datos.

    Excel Data tab showing the Text to Columns command in the Data Tools group

  3. En el asistente Convertir texto en columnas, seleccione Delimitado y haga clic en Siguiente.

  4. Borre los delimitadores que dividirían las fechas y revise la Vista previa de datos para asegurarse de que cada fecha permanezca en una sola columna. Luego haga clic en Siguiente.

  5. En Formato de los datos de columna, seleccione Fecha.

  6. Elija el orden de fecha que coincida con el texto original:

    • DMA: Para fechas como 15/01/2026.
    • MDA: Para fechas como 01/15/2026.
    • AMD: Para fechas como 2026/01/15.

    Excel Text to Columns Wizard with Date and DMY selected

  7. Revise el campo Destino. De forma predeterminada, Excel escribe las fechas convertidas de nuevo en la columna original. Para conservar las fechas de texto originales, escriba o seleccione la celda inicial de un rango de destino vacío y luego haga clic en Finalizar.

Excel convierte las cadenas de texto reconocidas en valores de fecha numéricos. Para cambiar cómo aparecen las fechas, seleccione las celdas convertidas, presione Ctrl + 1 y elija el formato de fecha que prefiera en la pestaña Número.

Excel worksheet comparing original text dates and converted dates

Importante: seleccione el orden de fecha correcto

Las opciones DMA, MDA y AMD describen el orden de los componentes en el texto de origen, no cómo desea que aparezcan las fechas después.

Por ejemplo, el texto 04/05/2026 puede interpretarse de forma diferente según el orden de fecha seleccionado:

Orden de fecha seleccionado Fecha interpretada
DMA (día/mes/año) 4 de mayo de 2026
MDA (mes/día/año) 5 de abril de 2026

Ambas interpretaciones son fechas válidas, por lo que Excel podría no informar de un error si selecciona el orden incorrecto. Elija siempre el orden de fecha utilizado en los datos de origen y compruebe algunos valores convertidos antes de procesar conjuntos de datos importantes.

Además de la conversión de fechas, también puede usar Texto en columnas para dividir el contenido de una celda en varias columnas, como separar nombres, direcciones u otros datos combinados.

Método 2: Convertir texto a fecha usando DATEVALUE

Use este método cuando: las fechas de origen sean cadenas de texto que Excel pueda reconocer y desee convertirlas mediante fórmulas sin modificar los datos originales.

La función DATEVALUE convierte las fechas de texto en números de serie de fecha de Excel, que luego se pueden formatear y usar en cálculos de fechas. A diferencia de Texto en columnas, que realiza una conversión única, DATEVALUE usa fórmulas que pueden recalcularse cuando cambian los valores de origen.

Guía paso a paso

Suponga que la celda A2 contiene 15-Jan-2026, almacenado como texto en lugar de como una fecha real de Excel.

  1. Seleccione una celda vacía junto a la fecha original, como B2, y asegúrese de que su formato de número sea General.

  2. Escriba la siguiente fórmula:

    =DATEVALUE(A2)
    
  3. Presione Entrar. En el sistema de fechas predeterminado de Excel de 1900, la fórmula devuelve 46037, que representa el 15 de enero de 2026.

  4. Arrastre el controlador de relleno hacia abajo para convertir las fechas de texto restantes.

  5. Seleccione las celdas convertidas y presione Ctrl + 1 para abrir el cuadro de diálogo Formato de celdas.

  6. En la pestaña Número, seleccione Fecha, elija el formato de fecha que prefiera y haga clic en Aceptar.

Excel worksheet showing text dates converted using the DATEVALUE function

Limitación: DATEVALUE depende de las reglas de reconocimiento de fechas de Excel, que pueden variar según la configuración regional. Puede devolver #VALUE! para cadenas de fecha no compatibles o interpretar incorrectamente fechas ambiguas. Para formatos como YYYYMMDD, use la función DATE con funciones de extracción de texto en su lugar.

Reemplazar fechas de texto por valores de fecha permanentes

Las celdas convertidas aún contienen fórmulas. Si desea reemplazar las fechas de texto originales por valores de fecha permanentes:

  1. Verifique que las fechas convertidas coincidan con las fechas previstas.
  2. Seleccione y copie las celdas de fecha convertidas.
  3. Seleccione la primera celda del rango de fechas original.
  4. Vaya a Inicio > Pegar > Pegado especial, seleccione Valores y haga clic en Aceptar.
  5. Aplique un formato de número de fecha a las celdas de destino si es necesario.
  6. Compruebe las fechas pegadas y luego elimine la columna temporal de fórmulas.

Nota: Después de reemplazar las fechas de texto originales, las fórmulas DATEVALUE temporales pueden devolver #VALUE! porque sus celdas de origen ahora contienen fechas numéricas. Esto no afecta a los valores ya pegados en la columna original.

Puede usar la misma técnica para quitar fórmulas en Excel y mantener sus valores calculados.

Método 3: Convertir YYYYMMDD y formatos de texto personalizados a fecha

Use este método cuando: las fechas estén almacenadas como cadenas de ocho dígitos, códigos numéricos o texto con formato fijo que DATEVALUE no pueda interpretar de forma fiable.

Por ejemplo, podría recibir fechas como 20260115 o 2026.01.15 de un sistema ERP o una base de datos. En lugar de confiar en el reconocimiento automático de fechas de Excel, puede usar LEFT, MID y RIGHT para extraer el año, el mes y el día, y luego combinarlos con la función DATE para crear un valor de fecha de Excel.

Convertir YYYYMMDD a fecha

Suponga que la celda A2 contiene 20260115, almacenado como texto o como un número de ocho dígitos en lugar de como un número de serie de fecha de Excel.

  1. Seleccione una celda vacía junto al valor original, como B2.

  2. Escriba la siguiente fórmula:

    =DATE(LEFT(A2,4),MID(A2,5,2),RIGHT(A2,2))
    
  3. Presione Entrar. La fórmula crea una fecha de Excel que representa el 15 de enero de 2026.

  4. Si los valores restantes siguen el mismo formato YYYYMMDD, arrastre el controlador de relleno hacia abajo para convertirlos.

  5. Seleccione las celdas convertidas, presione Ctrl + 1 y aplique el formato de fecha que prefiera.

La fórmula funciona extrayendo los componentes individuales de la fecha:

  • LEFT(A2,4) extrae el año: 2026.
  • MID(A2,5,2) extrae el mes: 01.
  • RIGHT(A2,2) extrae el día: 15.
  • DATE() combina estos componentes en un valor de fecha numérico de Excel.

Si aplica el formato de número personalizado yyyy-mm-dd, la fecha convertida aparece como 2026-01-15.

Convertir otras cadenas de fecha con formato fijo

Puede ajustar la fórmula para manejar diferentes patrones de fecha, incluidos valores con separadores.

Las fórmulas siguientes suponen que las fechas de origen están en A2:A6, en el orden mostrado. Cada fórmula hace referencia a la celda correspondiente de la columna A. Ajuste las referencias de celda si los datos se encuentran en otra ubicación.

Valor original Formato de entrada Fórmula
20260115 YYYYMMDD =DATE(LEFT(A2,4),MID(A2,5,2),RIGHT(A2,2))
15012026 DDMMYYYY =DATE(RIGHT(A3,4),MID(A3,3,2),LEFT(A3,2))
01152026 MMDDYYYY =DATE(RIGHT(A4,4),LEFT(A4,2),MID(A4,3,2))
2026-01-15 YYYY-MM-DD =DATE(LEFT(A5,4),MID(A5,6,2),RIGHT(A5,2))
2026.01.15 YYYY.MM.DD =DATE(LEFT(A6,4),MID(A6,6,2),RIGHT(A6,2))

Excel worksheet showing YYYYMMDD and other text dates converted with DATE formulas

Estas fórmulas suponen que los valores de origen siguen el patrón especificado, con cada componente de fecha en una posición fija. Por ejemplo, la fórmula para YYYY-MM-DD espera un año de cuatro dígitos seguido de valores de mes y día de dos dígitos.

Cuidado con los ceros iniciales y las fechas no válidas

Al convertir cadenas de fecha con formato fijo, hay dos problemas que merecen especial atención.

1. Los ceros iniciales pueden perderse durante la importación.

Si 01152026 (MMDDYYYY) se importa como número, Excel elimina el cero inicial y lo almacena como 1152026. La fórmula de posición fija ya no puede extraer los componentes correctamente.

Si sabe que los valores originales siguen un patrón MMDDYYYY de ocho dígitos, puede restaurar el cero faltante en una columna auxiliar.

Por ejemplo, escriba la siguiente fórmula en B2:

=TEXT(A2,"00000000")

Esto convierte 1152026 en la cadena de texto de ocho caracteres 01152026.

Luego puede usar el valor restaurado en B2 para construir una fecha en C2:

=DATE(RIGHT(B2,4),LEFT(B2,2),MID(B2,3,2))

Este enfoque supone que el valor numérico original representa una fecha MMDDYYYY con un cero inicial omitido. Para futuras importaciones, almacenar la columna de origen como texto ayuda a conservar los ceros iniciales desde el principio.

2. La función DATE puede ajustar componentes de fecha no válidos.

La función DATE no siempre devuelve un error cuando el mes o el día proporcionados están fuera del rango esperado.

Por ejemplo:

=DATE(2026,2,30)

Esto devuelve el 2 de marzo de 2026, porque febrero de 2026 solo tiene 28 días.

Por lo tanto, que una fórmula produzca una fecha de Excel válida no significa necesariamente que la cadena de fecha original fuera válida.

Para un valor de origen YYYYMMDD de ocho dígitos en A2 y su fecha convertida en B2, puede comprobar si la conversión conservó los componentes de fecha originales:

=AND(LEN(A2&"")=8,TEXT(B2,"yyyymmdd")=A2&"")
  • VERDADERO: El origen contiene ocho caracteres y la fecha convertida coincide con el año, el mes y el día originales.
  • FALSO: La longitud del origen o los componentes de fecha no coinciden y deben revisarse.

Esta comprobación supone que A2 contiene un valor YYYYMMDD y que B2 contiene una fecha de Excel calculada correctamente. Si B2 contiene un error, la fórmula de validación también puede devolver un error.

Nota: Si una celda ya contiene un número de serie de fecha de Excel, como 46037, solo necesita aplicar un formato de número de fecha. Sin embargo, un valor de ocho dígitos como 20260115 primero debe interpretarse como año, mes y día.

Método 4: Convertir fechas de texto importadas usando Power Query

Use este método cuando: trabaje habitualmente con fechas de texto importadas en Excel, especialmente desde archivos CSV o sistemas que usan convenciones regionales de fecha diferentes.

Power Query le permite convertir fechas de texto usando una configuración regional especificada y guarda los pasos de transformación para futuras actualizaciones.

Por ejemplo, un archivo de origen del Reino Unido puede contener fechas como 15/01/2026, mientras que su equipo usa la configuración regional de EE. UU. Convertir la columna directamente a Fecha puede producir errores porque el orden de fecha no coincide. La opción Usar configuración regional de Power Query le permite especificar cómo deben interpretarse las fechas de origen.

Guía paso a paso

  1. Abra sus datos en Power Query:

    • Para datos que ya están en una hoja de Excel: seleccione una celda del conjunto de datos y vaya a Datos > Desde tabla/rango.
    • Para archivos CSV: vaya a Datos > Obtener datos > Desde archivo > Desde texto/CSV, seleccione su archivo y haga clic en Transformar datos en la vista previa de importación.
  2. Si se le solicita al cargar datos de la hoja, confirme el rango de la tabla y la configuración de encabezados para abrir el Editor de Power Query.

  3. Revise el panel Pasos aplicados. Si un paso automático Tipo cambiado ya interpretó las fechas incorrectamente, quite o edite ese paso para restaurar los valores de texto originales antes de aplicar la configuración regional correcta.

  4. Seleccione la columna que contiene las fechas de texto, haga clic con el botón derecho en su encabezado y elija Cambiar tipo > Usar configuración regional.

  5. En el cuadro de diálogo Cambiar tipo con configuración regional, seleccione:

    • Tipo de datos: Fecha
    • Configuración regional: Inglés (Reino Unido), para fechas DD/MM/YYYY.

    Power Query Change Type with Locale dialog set to Date and English (United Kingdom)

  6. Haga clic en Aceptar. Revise las fechas convertidas en la vista previa para confirmar que el día y el mes se han interpretado correctamente.

  7. Vaya a Inicio > Cerrar y cargar para cargar los datos convertidos en Excel. De forma predeterminada, Power Query carga los resultados en una nueva hoja de cálculo, dejando los datos de origen originales sin cambios.

Para fechas con estilo de EE. UU. MM/DD/YYYY, elija Inglés (Estados Unidos) en su lugar.

Una vez configurada la consulta, puede usar Datos > Actualizar todo cuando cambien los datos de origen. Power Query vuelve a aplicar los pasos de transformación guardados, lo que hace que este enfoque sea útil para informes mensuales e importaciones de datos recurrentes.

Nota: Si una columna contiene diferentes formatos de fecha, es posible que deba estandarizar los valores o aplicar transformaciones separadas antes de convertirlos.

Método 5: Convertir texto a fecha automáticamente en Excel con C#

Use este método cuando: necesite automatizar la conversión de texto a fecha durante importaciones de datos, generación de informes o procesamiento en segundo plano.

En lugar de abrir cada libro en Excel, puede usar C# para leer fechas de texto, analizarlas según un formato especificado y guardar los valores convertidos como fechas reales de Excel.

Instalar la biblioteca necesaria

Este ejemplo usa Free Spire.XLS para .NET para leer y modificar libros de Excel sin requerir que Microsoft Excel esté instalado.

Instale la biblioteca mediante NuGet:

Install-Package FreeSpire.XLS

Nota sobre la edición gratuita: al leer o escribir archivos .xls heredados, la edición gratuita está limitada a 5 hojas de cálculo por libro y 200 filas por hoja de cálculo. Estos límites no se aplican a los archivos .xlsx cuando se usa Free Spire.XLS v7.8 o posterior.

Convertir fechas de texto en valores de fecha reales con C#

Suponga que orders.xlsx contiene una columna Fecha del pedido (columna B) en la primera hoja de cálculo, con los siguientes valores almacenados como texto:

ID de pedido Fecha del pedido
ORD-1001 15/01/2026
ORD-1002 20/01/2026
ORD-1003 03/02/2026

El siguiente ejemplo de C# convierte estas cadenas DD/MM/YYYY en fechas reales de Excel y aplica el formato de visualización YYYY-MM-DD.

using System;
using System.Globalization;
using Spire.Xls;

class Program
{
    static void Main()
    {
        Workbook workbook = new Workbook();
        workbook.LoadFromFile("orders.xlsx");

        // Get the first worksheet
        Worksheet sheet = workbook.Worksheets[0];

        // Convert text dates in column B (skip the first header row)
        for (int row = 2; row <= sheet.LastDataRow; row++)
        {
            CellRange cell = sheet.Range[row, 2];
            string text = (cell.Text ?? string.Empty).Trim();

            if (string.IsNullOrEmpty(text))
                continue;

            // Parse dates using the expected DD/MM/YYYY format
            if (DateTime.TryParseExact(
                text,
                "dd/MM/yyyy",
                CultureInfo.InvariantCulture,
                DateTimeStyles.None,
                out DateTime date))
            {
                cell.DateTimeValue = date;
                cell.NumberFormat = "yyyy-mm-dd";
            }
            else
            {
                Console.WriteLine($"Skipped B{row}: {text}");
            }
        }

        workbook.SaveToFile(
            "orders_converted.xlsx",
            ExcelVersion.Version2016);

        workbook.Dispose();
    }
}

El código procesa fechas de texto en la columna B usando DateTime.TryParseExact(), escribe las fechas analizadas correctamente como valores de fecha de Excel y guarda el resultado en orders_converted.xlsx.

Las celdas vacías y las cadenas de fecha no válidas se dejan sin cambios, y los valores no reconocidos se informan en la consola. Para manejar otros formatos de fecha, ajuste la cadena de formato (como MM/dd/yyyy o yyyyMMdd).

Excel order dates before and after conversion to actual date values using C#

Para obtener opciones de visualización adicionales, consulte cómo establecer formatos de número en Excel usando C#.

Problemas comunes de conversión de texto a fecha y sus soluciones

Si sus fechas de texto no se convierten correctamente, use la siguiente tabla para identificar causas y soluciones comunes.

Problema Causa probable Cómo solucionarlo
DATEVALUE devuelve #VALUE! Excel no puede reconocer la cadena de fecha, o contiene espacios adicionales o caracteres ocultos Compruebe el formato de origen y la configuración regional. Para espacios adicionales ordinarios, pruebe =DATEVALUE(TRIM(A2)).
Las fechas se convierten con el día y el mes incorrectos El orden de fecha se interpretó incorrectamente Use Texto en columnas con la configuración DMA/MDA correcta o Power Query con la configuración regional adecuada.
Las fechas convertidas muestran números como 46037 Las celdas contienen números de serie de fecha, pero no tienen formato de fecha Seleccione las celdas, presione Ctrl + 1 y aplique un formato de número de fecha.
Las fechas como 2026.01.15 no se reconocen Excel no puede interpretar el formato de origen automáticamente Use una fórmula DATE de posición fija o estandarice el formato de origen antes de la conversión.
Algunas filas se convierten y otras fallan La columna contiene formatos mixtos, fechas no válidas o caracteres ocultos Inspeccione las filas fallidas y aplique la regla de conversión adecuada.

Eliminar espacios ocultos de las fechas de texto

Las fechas copiadas de sitios web u otras aplicaciones pueden contener espacios de no separación que la función TRIM() de Excel no puede eliminar. Para manejar estos caracteres, use:

=DATEVALUE(TRIM(SUBSTITUTE(A2,CHAR(160)," ")))

Esta fórmula reemplaza los espacios de no separación por espacios normales, elimina el espaciado excesivo y convierte el texto limpio en una fecha de Excel. Aún requiere un formato de fecha que Excel pueda reconocer.

Conclusión

Para conversiones puntuales de texto a fecha, Texto en columnas de Excel y las fórmulas de fecha como DATEVALUE y DATE ofrecen soluciones prácticas. Power Query es útil para importaciones de datos recurrentes, mientras que C# proporciona un enfoque automatizado para procesar libros de Excel.

Cualquiera que sea el método que elija, verifique que los valores convertidos sean fechas de Excel válidas y representen el día y el mes correctos antes de usarlos en cálculos o informes.