Fórmula para Contar Días en Excel: SIFECHA, DIAS.LAB y Más
Contar días entre dos fechas en Excel parece simple hasta que te enfrentas a plazos legales, cálculos de nómina o proyectos con fines de semana y festivos de por medio. Para cada situación existe una fórmula distinta, y usar la equivocada genera errores que pasan desapercibidos hasta que ya es tarde.
Esta guía cubre seis métodos verificados, con ejemplos listos para copiar directamente en tu hoja de cálculo.
Método 1: Resta Simple (B1−A1)
La forma más rápida de obtener la diferencia entre dos fechas es restar directamente:
=B1-A1
Excel almacena las fechas como números de serie, por lo que esta operación devuelve el número de días corridos entre ambas. Si el resultado muestra una fecha en lugar de un número, selecciona la celda y cambia el formato a Número desde el menú Inicio → Formato de celdas.
Cuándo usarla: contratos civiles, vencimientos, conteo de días naturales donde los fines de semana cuentan igual que cualquier otro día.
Limitación: no excluye fines de semana ni festivos.
Método 2: La Función DIAS
=DIAS(B1,A1)
Esta función existe específicamente para calcular la diferencia entre fechas, pero tiene un detalle que confunde a muchos: los parámetros están invertidos. El primer argumento es la fecha más reciente (fecha final), el segundo es la fecha más antigua (fecha inicial). Así lo confirma la documentación oficial de Microsoft.
Si los inviertes, obtienes un número negativo. No es un error de Excel, es la sintaxis correcta de la función.
Diferencia respecto a la resta simple: el resultado es idéntico en valores absolutos. DIAS es más legible en fórmulas complejas donde la intención debe quedar clara.
Método 3: SIFECHA — La Función Oculta de Excel
=SIFECHA(A1,B1,"d")
SIFECHA (DATEDIF en Excel en inglés) es una función heredada de Lotus 1-2-3 que Microsoft mantiene por compatibilidad pero no aparece en el autocompletado de Excel. Debes escribirla manualmente, letra por letra.
Parámetros de SIFECHA
| Código | Resultado |
|---|---|
| “d” | Días totales entre las dos fechas |
| “m” | Meses completos |
| “y” | Años completos |
| “yd” | Días sin contar los años |
| “md” | Días sin contar meses ni años |
Error #NUM! en SIFECHA
Si la fecha de inicio es posterior a la fecha de fin, SIFECHA devuelve #NUM!. A diferencia de la resta simple, esta función no trabaja con diferencias negativas. Verifica siempre que A1 sea anterior a B1.
Caso de uso típico: calcular la antigüedad exacta de un empleado en años, meses y días restantes — algo que ninguna otra función hace en una sola fórmula.
Método 4: DIAS.LAB para Días Hábiles
=DIAS.LAB(A1,B1)
Esta función descuenta automáticamente los sábados y domingos. El resultado son los días laborables entre las dos fechas, lo que la convierte en la opción estándar para:
- Plazos procesales (cuando el código aplica días hábiles)
- Cálculo de entregas en proyectos
- Fecha de pago en nóminas
Incluir festivos en el cálculo
El tercer argumento opcional acepta un rango de fechas que representa festivos:
=DIAS.LAB(A1,B1,E1:E15)
Donde E1:E15 contiene las fechas de los festivos nacionales. Excel los excluye del conteo junto con los fines de semana.
Truco con HOY()
Para calcular cuántos días hábiles quedan desde hoy hasta una fecha límite:
=DIAS.LAB(HOY(),B1)
O para saber cuántos días hábiles han pasado desde que comenzó un contrato:
=DIAS.LAB(A1,HOY())
Esta combinación es especialmente útil en seguimiento de proyectos y control de vencimientos en tiempo real.
Método 5: DIAS.LAB.INTL para Fines de Semana Personalizados
=DIAS.LAB.INTL(A1,B1,tipo)
No todos los países tienen el mismo fin de semana laboral. DIAS.LAB.INTL permite definir qué días se consideran no laborables mediante un código numérico.
Códigos de fin de semana más usados
| Código | Días no laborables |
|---|---|
| 1 | Sábado y domingo (predeterminado) |
| 11 | Solo domingo |
| 7 | Solo viernes |
| 6 | Viernes y sábado |
El código 11 (solo domingo libre) es el estándar en varios países de Oriente Medio donde el viernes y el sábado son laborables. El código 6 (viernes y sábado) aplica en países con semana laboral de domingo a jueves.
=DIAS.LAB.INTL(A1,B1,11,E1:E15)
El cuarto argumento sigue siendo opcional e incluye festivos del mismo modo que DIAS.LAB.
Equivalentes en Google Sheets
Si trabajas en Hojas de cálculo de Google, las equivalencias son directas:
| Excel | Google Sheets |
|---|---|
=DIAS.LAB(A1,B1) | =DIASTRABALHO(A1,B1) |
=DIAS.LAB.INTL(A1,B1,1) | =DIASTRABALHO.INTL(A1,B1,1) |
=SIFECHA(A1,B1,"d") | =SIFECHA(A1,B1,"d") (misma sintaxis) |
La sintaxis de DIASTRABALHO en Google Sheets es idéntica a la de DIAS.LAB en Excel: mismos argumentos, mismo orden, mismos códigos de fin de semana.
Error Frecuente: Resultado con Formato de Fecha
Cuando aplicas cualquiera de estas fórmulas y el resultado muestra algo como “00/01/1900” en lugar de un número, el problema es el formato de celda. Excel interpreta el resultado como una fecha porque la celda tenía ese formato previamente.
Solución: selecciona la celda con el resultado → clic derecho → Formato de celdas → categoría Número → Aceptar.
Resumen de Fórmulas
| Fórmula | Cuenta | Excluye festivos |
|---|---|---|
=B1-A1 | Días corridos | No |
=DIAS(B1,A1) | Días corridos | No |
=SIFECHA(A1,B1,"d") | Días corridos | No |
=DIAS.LAB(A1,B1) | Días hábiles (lun-vie) | Sí (si se indica rango) |
=DIAS.LAB.INTL(A1,B1,código) | Días hábiles personalizados | Sí (si se indica rango) |
Cuándo Usar la Calculadora en Lugar de Excel
Estas fórmulas son ideales cuando ya tienes un archivo abierto. Pero si necesitas calcular días corridos o hábiles entre dos fechas sin abrir Excel, con festivos de Brasil, España, México, Colombia, Argentina o Chile ya incluidos, nuestra calculadora de días entre fechas lo resuelve en segundos, sin fórmulas y sin margen de error de formato.
Para quienes trabajan con prazos y vencimientos de forma habitual, también puede ser útil revisar cómo funciona la contagem de dias corridos cuando se aplica a contratos y plazos civiles.
Todas las fórmulas de este artículo fueron verificadas en Microsoft Excel 365 y Google Sheets. Los códigos de DIAS.LAB.INTL corresponden a la especificación oficial de Microsoft.




