¿Cómo convertir una fecha en día de la semana?

Día de la Semana en Excel: Fórmulas y Trucos

06/07/2023

Valoración: 4.8 (5830 votos)

Dominar Excel es clave en la gestión de datos, y una de las tareas más comunes y útiles es la de extraer el día de la semana a partir de una fecha. Ya sea para organizar horarios, analizar patrones de ventas por día, o simplemente para hacer tus informes más legibles, saber cómo obtener el nombre del día es una habilidad invaluable. Afortunadamente, Excel ofrece varias fórmulas y métodos para lograrlo de manera eficiente, adaptándose a diversas necesidades y niveles de complejidad. En este artículo, exploraremos las opciones más populares y te guiaremos paso a paso para que puedas aplicarlas con confianza en tus propias hojas de cálculo.

¿Cuál es la fórmula para mostrar el día de la semana?
Haga clic en la celda en blanco donde desea que se muestre el día. Escriba esta fórmula: = Choose (Weekday(A2), "Domingo", "Lunes", "Martes", "Miércoles", "Jueves", "Viernes", "Sábado") . Presione la tecla Intro o Retorno para obtener el resultado.

¿Por qué es útil obtener el día de la semana en Excel?

La capacidad de extraer el día de la semana de una fecha va más allá de la mera curiosidad. Tiene aplicaciones prácticas significativas en numerosos escenarios:

  • Análisis de Datos: Permite identificar patrones. Por ejemplo, ¿las ventas son más altas los martes o los viernes? ¿Los incidentes de soporte al cliente aumentan los fines de semana?
  • Planificación y Programación: Facilita la creación de calendarios, asignación de turnos o seguimiento de proyectos que dependen de días específicos.
  • Informes y Paneles de Control: Hace que los informes sean más intuitivos al mostrar los días de la semana en lugar de solo las fechas, mejorando la comprensión de los datos.
  • Automatización: Se puede usar en conjunto con otras fórmulas o funciones para automatizar procesos, como aplicar formatos condicionales a los fines de semana.

Método 1: La Combinación ELEGIR y DIASEM (CHOOSE y WEEKDAY)

Esta es una de las fórmulas más robustas y flexibles para obtener el día de la semana, especialmente si necesitas un control preciso sobre el orden y el idioma de los días. La fórmula se compone de dos funciones principales: DIASEM (WEEKDAY en inglés) y ELEGIR (CHOOSE en inglés).

La función DIASEM (WEEKDAY)

La función DIASEM devuelve un número entero que representa el día de la semana de una fecha determinada. Su sintaxis es:=DIASEM(fecha; [tipo_devuelto])

  • fecha: Es el argumento obligatorio, la fecha de la que quieres obtener el día de la semana. Puede ser una referencia a una celda que contenga una fecha o una fecha introducida directamente (por ejemplo, "01/01/2023").
  • tipo_devuelto: Es un argumento opcional que especifica el tipo de valor devuelto. Aquí es donde reside gran parte de la flexibilidad de DIASEM. Los valores más comunes son:
    • 1 (o omitido): Domingo es 1, Sábado es 7. (Por defecto)
    • 2: Lunes es 1, Domingo es 7.
    • 3: Lunes es 0, Domingo es 6.

Por ejemplo, si la celda A2 contiene la fecha 01/01/2023 (que fue un domingo), entonces:

  • =DIASEM(A2; 1) devolverá 1
  • =DIASEM(A2; 2) devolverá 7
  • =DIASEM(A2; 3) devolverá 6

La función ELEGIR (CHOOSE)

La función ELEGIR selecciona un valor de una lista de argumentos de valor basándose en un número de índice. Su sintaxis es:=ELEGIR(número_índice; valor1; [valor2]; ...)

  • número_índice: Es el argumento obligatorio que especifica qué argumento de valor se va a seleccionar. Debe ser un número entre 1 y el número de valores proporcionados.
  • valor1, valor2, ...: Son los argumentos de valor de los que ELEGIR selecciona uno. Puedes proporcionar hasta 254 valores.

Combinando ELEGIR y DIASEM

La fórmula que combina ambas funciones utiliza el número devuelto por DIASEM como el número_índice para ELEGIR, permitiéndonos asociar cada número a un nombre de día. La fórmula proporcionada en la consulta es un excelente ejemplo:

=ELEGIR(DIASEM(A2); "Domingo"; "Lunes"; "Martes"; "Miércoles"; "Jueves"; "Viernes"; "Sábado")

Aquí, DIASEM(A2), al no especificar un tipo_devuelto, asume el tipo 1 (Domingo=1, Sábado=7). Por lo tanto:

  • Si DIASEM(A2) devuelve 1, ELEGIR selecciona el primer valor: "Domingo".
  • Si DIASEM(A2) devuelve 2, ELEGIR selecciona el segundo valor: "Lunes".
  • ...y así sucesivamente, hasta el 7 para "Sábado".

Para usar esta fórmula:

  1. Haz clic en la celda en blanco donde deseas que se muestre el día de la semana.
  2. Escribe la fórmula exactamente como se muestra, reemplazando A2 por la referencia a la celda que contiene tu fecha.
  3. Presiona Intro o Retorno para obtener el resultado.

Ventajas de este método: Permite personalizar los nombres de los días (por ejemplo, usar abreviaturas o nombres en otros idiomas) y controlar el inicio de la semana (Lunes o Domingo). Es muy flexible.

Método 2: La Función TEXTO (TEXT) – La Opción Más Sencilla

Para la mayoría de los usuarios, la función TEXTO es la forma más directa y sencilla de obtener el nombre del día de la semana. Su sintaxis es:=TEXTO(valor; formato)

  • valor: Es la fecha que quieres convertir.
  • formato: Es una cadena de texto que especifica cómo se debe mostrar el valor.

Para obtener el día de la semana, usarás los siguientes códigos de formato:

  • "dddd": Devuelve el nombre completo del día de la semana (por ejemplo, "Lunes", "Martes").
  • "ddd": Devuelve el nombre abreviado del día de la semana (por ejemplo, "Lun", "Mar").

Ejemplo:

Si la celda A2 contiene la fecha 01/01/2023:

  • =TEXTO(A2; "dddd") devolverá "Domingo"
  • =TEXTO(A2; "ddd") devolverá "Dom"

Para usar esta fórmula:

  1. Haz clic en la celda donde quieres el resultado.
  2. Escribe =TEXTO(A2; "dddd") (o "ddd" para abreviar), reemplazando A2 por tu celda de fecha.
  3. Presiona Intro.

Ventajas de este método: Es extremadamente fácil de usar y comprender. No requiere una lista separada de nombres de días. El idioma del día devuelto dependerá de la configuración regional de tu Excel.

Método 3: Formato de Celda Personalizado (Sin Fórmula)

Este método es diferente a los anteriores, ya que no utiliza una fórmula para *extraer* el día en una celda separada, sino que *muestra* el día de la semana en la misma celda donde está la fecha, sin cambiar el valor subyacente de la celda (que sigue siendo una fecha).

  1. Selecciona la celda o rango de celdas que contienen las fechas.
  2. Haz clic derecho sobre la selección y elige Formato de celdas... (o presiona Ctrl + 1).
  3. En la pestaña Número, selecciona Personalizada en la lista de categorías.
  4. En el campo Tipo, introduce dddd para el nombre completo del día o ddd para el abreviado.
  5. Haz clic en Aceptar.

La celda seguirá conteniendo la fecha original, pero visualmente mostrará el día de la semana. Si necesitas realizar cálculos basados en la fecha, este método es ideal, ya que la fecha subyacente permanece intacta.

Ventajas de este método: No requiere una columna adicional. Mantiene la fecha original en la celda, lo que es útil si necesitas la fecha para otros cálculos. Es una solución visual.

Comparativa de Métodos

Cada método tiene sus fortalezas y debilidades, lo que los hace más adecuados para diferentes escenarios:

MétodoVentajasDesventajasCuándo Usarlo
ELEGIR(DIASEM())
  • Máxima personalización de los nombres de los días.
  • Control preciso sobre el inicio de la semana (Domingo=1, Lunes=1, etc.).
  • Ideal para lógica condicional compleja.
  • Fórmula más larga y compleja.
  • Requiere listar todos los nombres de los días.
  • Sensible al orden de los días en la lista.
Cuando necesitas un control absoluto sobre el texto del día, o si trabajas con configuraciones regionales específicas y el idioma predeterminado de Excel no es el deseado.
TEXTO()
  • Extremadamente simple y concisa.
  • No requiere listar los días.
  • Automáticamente usa el idioma configurado en Excel.
  • Menos control sobre el formato del texto (solo completo o abreviado).
  • Depende de la configuración regional de Excel para el idioma.
Para la mayoría de las necesidades de extracción del día de la semana. Es la opción más rápida y eficiente para obtener el nombre del día en una celda separada.
Formato de Celda Personalizado
  • No requiere una nueva columna.
  • Mantiene el valor de la fecha subyacente para cálculos.
  • Cambio puramente visual.
  • No extrae el día a una celda separada.
  • Solo afecta la visualización, no el valor real.
Cuando quieres que la fecha se muestre como el día de la semana sin alterar la celda o sin usar una fórmula que ocupe otra celda. Ideal para informes o tablas de visualización.

Ejemplos Prácticos Avanzados

Una vez que sabes cómo obtener el día de la semana, puedes integrar esto en soluciones más grandes.

1. Resaltar Fines de Semana con Formato Condicional

Puedes usar la fórmula DIASEM para aplicar formato condicional a los fines de semana.

  1. Selecciona el rango de fechas al que quieres aplicar el formato (ej. A2:A100).
  2. Ve a la pestaña Inicio > Formato condicional > Nueva regla.
  3. Selecciona Utilice una fórmula que determine las celdas para aplicar formato.
  4. En el cuadro de fórmula, introduce: =O(DIASEM(A2;2)=6;DIASEM(A2;2)=7) (Esta fórmula asume que Lunes=1, por lo que Sábado=6 y Domingo=7).
  5. Haz clic en Formato... y elige el color de relleno o fuente que desees para los fines de semana.
  6. Haz clic en Aceptar dos veces.

Esto resaltará automáticamente todas las fechas que caigan en sábado o domingo.

¿Qué quiere decir 3 días de calendario?
Los días calendario incluyen los fines de semana y días festivos.

2. Contar Días de la Semana Específicos en un Rango

Para contar cuántos lunes hay en un rango de fechas, puedes usar la función SUMAPRODUCTO junto con DIASEM.

=SUMAPRODUCTO(--(DIASEM(RangoFechas;2)=1))

Donde RangoFechas es tu rango de celdas con fechas (ej. A2:A50). El -- convierte los valores VERDADERO/FALSO (devueltos por la comparación) en 1/0, permitiendo que SUMAPRODUCTO los sume. El tipo_devuelto=2 asegura que Lunes sea 1.

Consideraciones Adicionales y Solución de Problemas

  • Formato de Fecha: Asegúrate de que las celdas que contienen las fechas estén realmente formateadas como fechas. Si Excel las interpreta como texto, las fórmulas no funcionarán correctamente. Puedes verificar esto yendo a Formato de celdas > Número > Fecha.
  • Configuración Regional: La función TEXTO y el formato de celda personalizado (`dddd`, `ddd`) se adaptarán al idioma de la configuración regional de tu sistema operativo o de tu versión de Excel. Si tu Excel está en español, mostrará "Lunes", "Martes", etc. Si está en inglés, mostrará "Monday", "Tuesday", etc. Esto es importante si compartes hojas de cálculo con usuarios que tienen diferentes configuraciones. La combinación ELEGIR(DIASEM()) te da el control total sobre el idioma de los días, ya que los escribes tú mismo.
  • Celdas Vacías: Si la celda de fecha está vacía, las funciones DIASEM y TEXTO pueden devolver resultados inesperados (por ejemplo, DIASEM puede devolver 1, correspondiente al 0 de enero de 1900, que Excel interpreta como domingo). Para evitar esto, puedes usar una comprobación SI:=SI(ESBLANCO(A2); ""; TEXTO(A2; "dddd")) o =SI(ESBLANCO(A2); ""; ELEGIR(DIASEM(A2); "Domingo"; "Lunes"; "Martes"; "Miércoles"; "Jueves"; "Viernes"; "Sábado")).

Preguntas Frecuentes (FAQ)

¿Cuál es la fórmula más sencilla para obtener el día de la semana?

La fórmula más sencilla es =TEXTO(CeldaConFecha; "dddd") para el nombre completo del día, o =TEXTO(CeldaConFecha; "ddd") para el nombre abreviado.

¿Cómo puedo obtener el día de la semana abreviado?

Utiliza la función TEXTO con el formato "ddd". Por ejemplo, =TEXTO(A2; "ddd") devolverá "Lun", "Mar", etc.

¿Puedo cambiar el idioma del día de la semana que se muestra?

Sí. Con la función TEXTO, el idioma se basa en la configuración regional de tu Excel. Para un control total sobre el idioma, usa la combinación ELEGIR(DIASEM()) y escribe los nombres de los días en el idioma que desees.

Mi fórmula devuelve un número o un error, ¿qué estoy haciendo mal?

Asegúrate de que la celda de entrada sea una fecha válida y no texto. Si usas DIASEM sola, recuerda que devuelve un número (1-7 o 0-6) y no el nombre del día. Si quieres el nombre, debes combinarla con ELEGIR o usar TEXTO.

¿Cómo puedo saber qué número representa cada día con DIASEM?

Depende del argumento tipo_devuelto que uses. Si lo omites o usas 1, Domingo es 1, Lunes es 2, y así sucesivamente. Si usas 2, Lunes es 1, Martes es 2, etc. Si usas 3, Lunes es 0, Martes es 1, etc.

Conclusión

Extraer el día de la semana en Excel es una tarea fundamental que puede simplificar enormemente el análisis y la presentación de tus datos. Ya sea que prefieras la simplicidad de la función TEXTO, la flexibilidad de la combinación ELEGIR(DIASEM()), o la elegancia del formato de celda personalizado, Excel te ofrece las herramientas necesarias para lograrlo. Al comprender y aplicar estos métodos, transformarás tus fechas en información valiosa y harás tus hojas de cálculo mucho más funcionales y comprensibles. Experimenta con cada uno para descubrir cuál se adapta mejor a tus flujos de trabajo y necesidades específicas.

Si quieres conocer otros artículos parecidos a Día de la Semana en Excel: Fórmulas y Trucos puedes visitar la categoría Cálculos.

Subir