Obtener el día de la semana en Excel

Cuando trabajamos con fechas en Excel frecuentemente necesitamos obtener el día de la semana que le corresponde a una fecha determinada. Por ejemplo, saber el día de la semana que corresponde a la fecha 11/11/2013.

Día de la semana con formato de celda

La opción más sencilla para ver el día de la semana de una fecha determinada es modificando el formato de la celda. Por ejemplo, en la siguiente imagen puedes notar que la columna A tiene una serie de fechas en formato dd/mm/aaaa. He copiado las mismas fechas a la columna B y he modificado el formato de las celdas para mostrar el día de la semana:

Obtener el día de la semana en Excel

Al aplicar el formato de Fecha larga obtenemos el día de la semana para cada fecha. Este formato lo he seleccionado de la lista desplegable que se encuentra en el grupo Número de la ficha Inicio. Por el contrario, si solo deseamos mostrar el día de la semana, sin mostrar la fecha completa, entonces necesitamos crear un formato personalizado de celdas que utilice el formato dddd:

Día de la semana en Excel con formato personalizado

De esta manera comprobamos que al modificar el formato de una celda podemos visualizar el día de la semana para una fecha determinada, sin embargo el valor de la celda sigue siendo un valor numérico y eso impide que podamos concatenarlo con una cadena de texto. Por ejemplo, si en la columna C deseo formar la cadena de texto “Hoy es lunes” utilizando el resultado de la columna B obtendré un resultado inesperado:

Cómo devolver un día de la semana para una fecha en Excel

Como puedes observar, Excel concatena el valor numérico de la fecha ya que el formato personalizado de la columna B no modificó el valor de la celda sino solamente la manera en que es desplegado en pantalla. Sin embargo, podemos solucionar este problema si utilizamos la función TEXTO.

Obtener el día de la semana con la función TEXTO

La función TEXTO nos permite convertir un valor numérico en texto y asignar un formato al momento de la conversión. Observa el resultado al utilizar la función TEXTO para convertir las fechas de la columna A utilizando el formato dddd:

Mostrar la fecha como día de la semana en Excel

La fórmula nos devuelve el día de la semana de la fecha correspondiente, y en esta ocasión no se modifica el formato de las celdas, sino que la función TEXTO nos devuelve una cadena que podremos concatenar fácilmente. En la siguiente imagen utilizo el resultado de la función TEXTO para concatenar el día de la semana con la cadena de texto “Hoy es “:

Cómo calcular el día de la semana en Excel

La función TEXTO no solo nos ayuda a obtener el día de la semana de una fecha sino que también podemos obtener el nombre del mes y el año. Si quieres saber más sobre el uso de la función TEXTO junto con las fechas en Excel te recomiendo leer el artículo Extraer información de una fecha.

La función DIASEM y el número de día

En los ejemplos anteriores hemos visto cómo obtener el nombre del día de la semana para una fecha determinada, pero si para ti es suficiente con el número del día de la semana, entonces puedes utilizar la función DIASEM.

De manera predeterminada la función DIASEM asigna el número 1 al día domingo, hasta llegar al día sábado que tendrá asignado el número 7. En la siguiente imagen puedes observar el resultado de utilizar esta función con las fechas de la columna A:

Función de Excel que devuelve los días de la semana

Si por el contrario deseas considerar el inicio de semana en lunes, solo debes utilizar el valor 2 como el segundo argumento de la función DIASEM. Una ventaja de utilizar los números de los días, en lugar de sus nombres, es que podemos hacer comparaciones fácilmente y tomar decisiones al respecto. Por ejemplo, si deseo mostrar el mensaje “Descanso” cuando la fecha sea un sábado o un domingo, puedo utilizar la siguiente fórmula:

Fórmula de Excel para obtener los días de la semana

En esta fórmula utilizo el valor 2 para el segundo argumento de la función DIASEM y por lo tanto obtendré el valor 6 y 7 para sábado y domingo respectivamente. De esta manera la función SI mostrará el mensaje “Descanso” para dichos días o de lo contrario mostrará el mensaje “Día laboral”.

Con los ejemplos de este artículo hemos mostrado cómo obtener el día de la semana en Excel según la fecha indicada. Utiliza las fórmulas desarrolladas para obtener el nombre del día de la semana o simplemente trabajar con el número del día.