¿Cómo encontrar fechas o rangos de tiempo superpuestos en Excel?
En Excel, las fechas o rangos de tiempo superpuestos pueden provocar conflictos de programación, problemas en la asignación de recursos o incidencias relacionadas con la integridad de los datos. Detectar eficazmente estas superposiciones es fundamental para gestionar turnos, planificar eventos, administrar sistemas de reservas o manejar cronogramas de proyectos en los que un período no debería solaparse con otro. Este artículo ofrece una guía paso a paso sobre distintos enfoques prácticos para identificar fechas o rangos de tiempo superpuestos en Excel, tal como se muestra en la siguiente captura de pantalla.
Comprobar fechas/Rango de tiempo superpuestas con fórmula
Comprobar fechas/Rango de tiempo superpuestas con fórmula
Cuando necesite verificar de forma sistemática si fechas o rangos de tiempo se superponen, las fórmulas de Excel ofrecen una solución rápida y flexible. Este enfoque resulta ideal para conjuntos de datos pequeños o medianos, o cuando requiera una salida lógica (VERDADERO o FALSO) que indique superposiciones fila por fila.
Casos de uso habituales: Programación de turnos de empleados, reservas de eventos, seguimiento de fases de proyectos o gestión de alquileres, donde cada fila representa un intervalo con una fecha y hora de inicio y una fecha de fin.
Limitaciones: aunque eficiente para listas de tamaño moderado, las fórmulas pueden no ser la opción más adecuada para conjuntos de datos muy grandes ni para generar informes completos sobre superposiciones entre múltiples registros.
1. Seleccione todas las celdas que contengan sus fechas de inicio. Con el rango resaltado, haga clic en el Cuadro de nombres (el campo situado a la izquierda de la Barra de fórmulas) y escriba un nombre descriptivo, como fechainicio. Pulse Entrar para confirmar. Este paso le permitirá hacer referencia fácilmente a toda la lista en fórmulas. Vea la captura de pantalla:
2. De forma similar, seleccione las celdas de Fecha de fin, introduzca un nombre de celda en el Cuadro de nombres como fechafin y pulse nuevamente Entrar. Asignar nombres a los rangos hace que sus fórmulas sean más legibles y reutilizables.
3. Haga clic en una celda vacía de la misma fila que su primer registro —por ejemplo, C2— donde desee que aparezcan los resultados de superposición e introduzca la siguiente fórmula:
=SUMPRODUCT((A2<enddate)*(B2>=startdate))>1 Sustituya A2 por la celda que contiene la fecha de inicio de su registro y B2 por la fecha de fin. fechafin y fechainicio utilizan los nombres que definió. Esta fórmula comprueba si su intervalo actual se superpone con cualquier otro de la lista. Pulse Entrar y, a continuación, arrastre el controlador de relleno hacia abajo para aplicarlo a todas las filas que desee comprobar. Para cada fila, VERDADERO indica que el rango correspondiente se superpone con al menos otro; de lo contrario, no se ha detectado ninguna superposición.

Asegúrese de que tanto fechainicio como fechafin hagan referencia a las columnas completas que contienen los valores de inicio y fin. Ajuste las referencias de celda según sea necesario si sus columnas difieren o si sus rangos incluyen encabezados.
Notas importantes y solución de problemas:
- Si recibe un error #¡VALOR!, asegúrese de que los nombres de celda y las referencias sean correctos, y de que sus columnas de fecha no contengan texto ni valores de fecha/hora con formato incorrecto.
- Este enfoque tiene en cuenta casos superpuestos en los que los periodos no son completamente distintos. Los intervalos que únicamente se tocan en los extremos (cuando la fecha de fin de uno coincide exactamente con la fecha de inicio de otro) generalmente no se consideran superpuestos, aunque puede ajustar este comportamiento modificando la desigualdad en la fórmula.
- Para el rango de tiempo (incluyendo horas y minutos), la fórmula funciona exactamente igual que con las fechas, siempre que las celdas estén formateadas de forma coherente como horas o fechas.
Código VBA: automatice la detección de fechas/Rango de tiempo superpuestas en conjuntos de datos grandes o para Generar informe
Si trabaja habitualmente con grandes conjuntos de datos y necesita una forma más automatizada de detectar superposiciones —especialmente al generar informes resumidos o al marcar simultáneamente todas las entradas conflictivas—, VBA puede agilizar notablemente el proceso. Este enfoque elimina las comprobaciones manuales, es ideal para cientos o miles de intervalos y se puede personalizar para resaltar o listar todos los pares superpuestos.
Cuándo usarlo: Recomendado para usuarios avanzados que gestionan grandes bases de datos de programación, recursos compartidos o cualquier persona que necesite generar registros detallados de todas las superposiciones detectadas, en lugar de una simple marca VERDADERO/FALSO por fila.
Inconvenientes potenciales: Requiere habilitar macros, cierta familiaridad con VBA y una copia de seguridad cuidadosa de los datos antes de ejecutarlo por primera vez, para evitar sobrescrituras accidentales.
1. Haga clic en Herramientas para desarrolladores > Visual Basic para abrir la ventana de Microsoft Visual Basic para Aplicaciones. A continuación, haga clic en Insertar > Módulo y pegue el siguiente código en la ventana del módulo:
Sub FindOverlappingDateRanges()
Dim ws As Worksheet
Dim i As Long, j As Long
Dim lastRow As Long
Dim overlapList As String
Dim msg As String
Dim Start1, End1, Start2, End2
On Error Resume Next
xTitleId = "KutoolsforExcel"
Set ws = ActiveSheet
lastRow = ws.Cells(ws.Rows.Count, 1).End(xlUp).Row ' Assumes data starts in row 2
overlapList = ""
For i = 2 To lastRow
Start1 = ws.Cells(i, 1).Value
End1 = ws.Cells(i, 2).Value
If Start1 <> "" And End1 <> "" Then
For j = 2 To lastRow
If i <> j Then
Start2 = ws.Cells(j, 1).Value
End2 = ws.Cells(j, 2).Value
If Start2 <> "" And End2 <> "" Then
If Start1 < End2 And End1 > Start2 Then
overlapList = overlapList & "Row " & i & " overlaps with Row " & j & vbCrLf
End If
End If
End If
Next j
End If
Next i
If overlapList <> "" Then
msg = "The following rows have overlapping date/time ranges:" & vbCrLf & overlapList
Else
msg = "No overlapping date/time ranges found."
End If
MsgBox msg, vbInformation, "KutoolsforExcel"
End Sub 2. Tras introducir el código, haga clic en Ejecutar o pulse Entrar para ejecutarlo. La macro escanea los pares de rangos de fechas de las columnas A (Inicio) y B (Fin) e informa de cualquier superposición detectada, mostrando un cuadro de mensaje con todas las filas que presentan conflictos y facilitando así su auditoría o investigación.
- Asegúrese de que los valores de inicio y la fecha de fin se encuentren en las columnas A y B, respectivamente, comenzando en la fila 2 (con la fila 1 reservada para encabezados). Ajuste los rangos si sus datos están organizados de manera diferente.
- Todas las celdas del rango comparado deben contener valores válidos de fecha y hora, sin dejar ninguna vacía.
- Realice una copia de seguridad de sus archivos importantes antes de ejecutar o adaptar cualquier código VBA para evitar la pérdida de datos.
Consejo: Puede mejorar el código VBA para marcar superposiciones directamente en la hoja de cálculo coloreando filas o escribiendo los resultados en una columna adyacente.
Usar formato condicional: resalte visualmente los rangos superpuestos directamente en la hoja de cálculo para facilitar su identificación
El formato condicional es una forma práctica de resaltar visualmente intervalos superpuestos de fecha u hora directamente en su hoja de cálculo. Esta solución resulta especialmente útil en agendas ocupadas, diagramas de Gantt o cronogramas de eventos, donde necesita identificar rápidamente qué registros entran en conflicto.
Ideal para: Usuarios que buscan retroalimentación inmediata en la hoja o indicaciones visuales sin tener que introducir fórmulas en cada fila ni ejecutar código. ¡Perfecto para comprobaciones interactivas de datos y presentaciones!
Limitaciones: Los conjuntos de datos grandes pueden ralentizarse; además, aunque se resaltan las superposiciones, no se generan pares ni recuentos detallados.
Cómo aplicarlo:
- Seleccione el rango de Fecha de inicio(por ejemplo,)A2:A100) y el de Fecha de fin (B2:B100), o seleccione ambas columnas juntas si los rangos están uno al lado del otro.
- En la pestaña Inicio, haga clic en Usar formato condicional > Nueva regla.
- Seleccione la opción Usar una fórmula para determinar qué celdas dar formato.
- Introduzca esta fórmula en el cuadro de fórmulas (suponiendo que su selección comienza en la fila 2):
=SUMPRODUCT(($A2<$B$2:$B$100)*($B2>$A$2:$A$100))>1 - Haga clic en Formato…, elija un color de relleno para resaltar los rangos superpuestos y, a continuación, haga clic en Aceptar para aplicarlo.
Una vez aplicada la regla, cualquier fila en la que el intervalo seleccionado se superponga con otro dentro de su rango se resaltará visualmente, facilitando la detección de problemas sin necesidad de leer cada entrada individualmente.
Consejo: Ajuste $A$2:$A$100 y $B$2:$B$100 para que coincidan con sus rangos de datos reales y asegúrese de que las referencias correspondan a la primera fila de su selección.
Precauciones: Si desea resaltar solo una de las dos columnas (por ejemplo, únicamente la fecha de inicio), utilice igualmente la fórmula lógica correspondiente. Tenga en cuenta la superposición en los límites según sus necesidades lógicas específicas.
Las mejores herramientas de productividad para Office
Potencie sus habilidades en Excel con Kutools para Excel y experimente una eficiencia como nunca antes.Kutools para Excel ofrece más de 300 funciones avanzadas para aumentar su productividad y Ahorrar tiempo.Haga clic aquí para obtener la función que más necesita...
Office Tab aporta una interfaz con pestañas a Office y hace que su trabajo sea mucho más fácil
- Active la edición y lectura con pestañas en Word, Excel, PowerPoint, Publisher, Access, Visio y Project.
- Abra y cree varios documentos en nuevas pestañas dentro de la misma ventana, en lugar de hacerlo en ventanas separadas.
- ¡Aumente su productividad en un 50 % y elimine cientos de clics del ratón cada día!
Todos los complementos de Kutools en un solo instalador.
Kutools for Office es la suite que incluye complementos para Excel, Word, Outlook y PowerPoint, además de Office Tab Pro, ideal para equipos que trabajan en distintas aplicaciones de Office.
- Suite integral— complementos para Excel, Word, Outlook y PowerPoint + Office Tab Pro
- Un instalador, una licencia— configuración en minutos (compatible con MSI)
- Rendimiento mejorado en conjunto— productividad optimizada en todas las aplicaciones de Office
- Prueba gratuita de 30 días con todas las funciones— sin registro ni tarjeta de crédito
- La mejor relación calidad-precio— ahorre frente a la compra individual de complementos