En este artículo 18 secciones
- Fórmula para el nombre del día de la semana.
- Mostrar el día de la semana sin fórmula.
- Día de la semana como número con DIASEM.
- Convertir el nombre del día en número.
- Por qué una fórmula muestra solo las primeras letras del día.
- El día de la semana de la fecha de hoy.
- Descargar el ejemplo en Excel.
- Preguntas frecuentes.
- Artículos relacionados
Excel puede decirnos qué día de la semana corresponde a una fecha, ya sea con su nombre («lunes»), abreviado («lun») o como un número del 1 al 7. Para el nombre se usa la función TEXTO, y para el número, DIASEM. ¿Cómo se escribe cada fórmula y cómo evitar que el día salga en inglés?
Fórmula para el nombre del día de la semana.
La función TEXTO convierte un valor en texto con el formato que le indiquemos. Tiene dos argumentos:
- Valor: la celda que contiene la fecha, o la fecha misma.
- Formato: el código que define cómo se muestra. Para el día de la semana se usa la letra d repetida.
Con la fecha en A1, el nombre completo del día se obtiene así:
=TEXTO(A1;"dddd")
Si A1 contiene 12/10/2026, el resultado es «lunes». Con tres letras d, el resultado es el nombre abreviado, «lun»:
=TEXTO(A1;"ddd")
La cantidad de letras d cambia el resultado por completo, de modo que conviene no confundirlas:
| Código | Qué devuelve | Ejemplo con 12/10/2026 |
|---|---|---|
| "d" | Día del mes, sin cero inicial | 12 |
| "dd" | Día del mes, con dos dígitos | 12 |
| "ddd" | Nombre abreviado del día | lun |
| "dddd" | Nombre completo del día | lunes |
El código «dddd» puede combinarse con el resto de la fecha. Por ejemplo, para obtener «lunes, 12 de octubre de 2026»:
=TEXTO(A1;"dddd")&", "&DIA(A1)&" de "&TEXTO(A1;"mmmm")&" de "&AÑO(A1)
El nombre del mes con TEXTO y el código «mmmm» se explica en el artículo sobre el nombre y número del mes en Excel.
- Liquidador de intereses judiciales y comerciales
- Guía de propiedad horizontal
- Liquidador de renta personas naturales
Si el día aparece en inglés.
TEXTO devuelve el nombre del día en el idioma de la configuración regional del equipo. Si Excel o Windows están en inglés, el resultado será «Monday». Para forzar el español, se antepone al formato el código de idioma de Colombia:
=TEXTO(A1;"[$-240A]dddd")
El código [$-240A] corresponde al español de Colombia. Con él la fórmula da el mismo resultado en cualquier equipo.
Con mayúscula inicial o en mayúsculas.
TEXTO devuelve el día en minúsculas. Para la mayúscula inicial se envuelve la fórmula en NOMPROPIO, y para todo en mayúsculas, en MAYUSC:
=NOMPROPIO(TEXTO(A1;"dddd"))
=MAYUSC(TEXTO(A1;"dddd"))
Los resultados son «Lunes» y «LUNES».
Mostrar el día de la semana sin fórmula.
Si no necesitamos el día en otra celda, sino ver el nombre del día en la misma celda de la fecha, basta con cambiar el formato: clic derecho, «Formato de celdas», categoría «Personalizada», y en «Tipo» se escribe dddd, o dddd dd/mm/aaaa para ver el día y la fecha.
La ventaja es que la celda sigue conteniendo una fecha, con la que se puede calcular. En cambio, el resultado de TEXTO es texto, y no sirve para restar fechas ni para ordenarlas cronológicamente.
Día de la semana como número con DIASEM.
Para hacer cálculos, como saber si una fecha cae en fin de semana, es más útil el día como número. La función DIASEM lo devuelve, y su segundo argumento define con qué día empieza la semana:
=DIASEM(A1;2)
Los tipos más usados son los siguientes:
| Fórmula | Resultado |
|---|---|
| =DIASEM(A1) | 1 = domingo, 2 = lunes … 7 = sábado |
| =DIASEM(A1;2) | 1 = lunes, 2 = martes … 7 = domingo |
| =DIASEM(A1;3) | 0 = lunes, 1 = martes … 6 = domingo |
Sin el segundo argumento, Excel empieza la semana el domingo, como en Estados Unidos. En Colombia lo natural es el tipo 2, en el que el lunes es 1, porque con él los fines de semana son los números 6 y 7. En Excel en inglés la función se llama WEEKDAY.
Saber si una fecha cae en fin de semana.
Con DIASEM tipo 2, cualquier número mayor que 5 corresponde a sábado o domingo:
=SI(DIASEM(A1;2)>5;"Fin de semana";"Entre semana")
La misma condición sirve para resaltar los fines de semana con formato condicional: se selecciona el rango, se elige «Formato condicional», «Nueva regla», «Utilice una fórmula que determine las celdas para aplicar formato», y se escribe =DIASEM($A1;2)>5.
Para contar o sumar días hábiles, excluyendo también los festivos, es mejor usar las funciones que se explican en el artículo sobre cómo sumar días hábiles a una fecha en Excel.
Convertir el nombre del día en número.
El caso contrario también es frecuente: tenemos una columna con «lunes», «martes», «miércoles» y necesitamos convertirlos en 1, 2, 3. La función COINCIDIR busca el nombre en una lista escrita dentro de la fórmula y devuelve su posición:
=COINCIDIR(A1;{"lunes";"martes";"miércoles";"jueves";"viernes";"sábado";"domingo"};0)
COINCIDIR no distingue mayúsculas de minúsculas, de modo que «Lunes» y «LUNES» también dan 1. Pero sí distingue las tildes: «miercoles» o «sabado» escritos sin tilde no se encuentran. Cuando los datos vienen con y sin tilde, es más seguro comparar solo las dos primeras letras:
=COINCIDIR(SUSTITUIR(MINUSC(IZQUIERDA(A1;2));"á";"a");{"lu";"ma";"mi";"ju";"vi";"sa";"do"};0)
IZQUIERDA toma las dos primeras letras, MINUSC las pasa a minúsculas y SUSTITUIR quita la tilde de «sá». Así, «sábado», «Sabado» y «SÁBADO» dan 6.
Por qué una fórmula muestra solo las primeras letras del día.
Un lector nos consultó por qué esta fórmula le mostraba el día abreviado y no el nombre completo:
=SI(D5="";"";MAYUSC(IZQUIERDA(TEXTO(ABS(CONCATENAR(D5;" ";$T$2));"dddd");2)))
El código «dddd» está bien; lo que recorta el nombre es la función IZQUIERDA(…;2), que se queda solo con los dos primeros caracteres. Además, unir la fecha con otro valor mediante CONCATENAR y convertirlo de nuevo en número con ABS es innecesario para obtener el día. La fórmula se simplifica así:
=SI(D5="";"";MAYUSC(TEXTO(D5;"dddd")))
Si lo que se quería era sumar a la fecha una hora guardada en T2, puede escribirse D5+$T$2, aunque eso no cambia el día salvo que la suma pase de la medianoche.
El día de la semana de la fecha de hoy.
La función HOY devuelve la fecha actual, y se actualiza cada vez que se abre el libro. Combinada con TEXTO:
=TEXTO(HOY();"dddd")
Si lo que se busca es el número del día del mes, y no el nombre del día, la función es DIA: =DIA(A1) devuelve 12 para el 12 de octubre.
Descargar el ejemplo en Excel.
El archivo tiene dos semanas de fechas con todas las fórmulas del artículo: nombre completo y abreviado, mayúsculas, DIASEM con los dos tipos, el formato personalizado y la marca de fin de semana con formato condicional. Una segunda hoja convierte nombres de días, con y sin tilde, en números. Descargar archivo.
Preguntas frecuentes.
A continuación respondemos las preguntas frecuentes de nuestros lectores.
¿Cuál es la fórmula para saber qué día de la semana es una fecha en Excel?
=TEXTO(A1;"dddd") para el nombre completo, o =DIASEM(A1;2) para el número, con lunes = 1.
¿Cómo pongo el día de la semana abreviado?
Con tres letras d: =TEXTO(A1;"ddd") devuelve «lun», «mar», «mié».
¿Por qué el día me sale en inglés?
Porque TEXTO usa el idioma del equipo. Se corrige con =TEXTO(A1;"[$-240A]dddd").
¿Existe la función DIA.DE.LA.SEMANA en Excel?
No. En Excel en español la función es DIASEM, y en inglés, WEEKDAY.
¿Cómo convierto lunes, martes, miércoles en 1, 2, 3?
Con =COINCIDIR(A1;{"lunes";"martes";"miércoles";"jueves";"viernes";"sábado";"domingo"};0). Si los nombres pueden venir sin tilde, conviene comparar las dos primeras letras.
¿Cómo sé si una fecha es sábado o domingo?
Con =DIASEM(A1;2)>5, que devuelve VERDADERO para sábados y domingos.
Hola, tengo esta fórmula y en la celda los días de la semana me aparecen como “lu”, “mar”, “mie” y no me sale el nombre completo:
=SI(D5=””;””;MAYUSC(IZQUIERDA(TEXTO(ABS(CONCATENAR(D5;” “;$T$2));”dddd”);2)))
¿Qué contiene tu celda T2?