Skip to main content

¿Cómo extraer todos los registros entre dos fechas en Excel?

Author: Sun Last Modified: 2025-07-21

Al trabajar con grandes cantidades de datos con marcas de tiempo en Excel, es posible que a menudo necesites extraer o filtrar todos los registros que se encuentran entre dos fechas específicas. Por ejemplo, podrías querer analizar transacciones dentro de un período de facturación, revisar la asistencia para un mes determinado o simplemente examinar entradas registradas dentro de un rango de fechas personalizado. Buscar y copiar manualmente cada fila relevante puede ser tedioso y propenso a errores, especialmente a medida que tu volumen de datos crece. Extraer eficientemente todos los registros entre dos fechas dadas no solo te ahorra tiempo y esfuerzo significativos, sino que también reduce la probabilidad de omitir entradas importantes o introducir errores durante el manejo de datos.

A screenshot of data range in Excel for extracting records between two dates Arrow right A screenshot showing extracted records between two dates in Excel

A continuación, encontrarás varios métodos prácticos para extraer todos los registros entre dos fechas en Excel. Cada enfoque tiene sus propios escenarios aplicables y ventajas, desde la extracción basada en fórmulas (sin complementos requeridos), hasta usar Kutools para Excel para mayor conveniencia, código VBA y el filtro incorporado de Excel, proporcionando soluciones flexibles para diferentes necesidades y preferencias de usuario.

Extraer todos los registros entre dos fechas mediante fórmulas

Extraer todos los registros entre dos fechas mediante Kutools para Excel good idea3

Usa VBA para extraer registros entre dos fechas

Usa el filtro de Excel para extraer registros entre dos fechas


Extraer todos los registros entre dos fechas mediante fórmulas

Para extraer todos los registros entre dos fechas en Excel usando fórmulas, puedes seguir estos pasos. Esta solución es especialmente útil cuando deseas actualización dinámica: siempre que cambie el conjunto de datos original o las condiciones de fecha, los resultados se actualizan automáticamente. Sin embargo, si no estás familiarizado con las fórmulas de matriz, la configuración inicial puede parecer un poco compleja. Si tu conjunto de datos es muy grande, este método puede causar un rendimiento más lento en los cálculos.

1. Prepara una nueva hoja de trabajo, por ejemplo, Hoja2, donde especificarás los límites de fecha y mostrarás los registros extraídos. Ingresa la fecha de inicio y la fecha final deseadas en las celdas A2 y B2, respectivamente. Para mayor claridad, puedes agregar encabezados en A1 y B1 (como "Fecha de inicio" y "Fecha final").
A screenshot of the start and end date input cells in Excel

2. En la celda C2 de Hoja2, ingresa la siguiente fórmula para contar cuántas filas en Hoja1 tienen fechas que caen dentro del rango especificado:

=SUMPRODUCT((Sheet1!$A$2:$A$22>=A2)*(Sheet1!$A$2:$A$22<=B2))

Después de ingresar la fórmula, presiona Enter. Esto te ayuda a entender cuántas entradas coinciden con tu condición de filtro, lo que facilita saber cuántos resultados esperar.
A screenshot of the formula used to count matching rows between two dates

Nota: En esta fórmula, Hoja1 se refiere a tu hoja de datos original; $A$2:$A$22 es la columna de fechas en tus datos. Ajusta estas referencias según sea necesario para tus datos. A2 y B2 son tus celdas de fecha de inicio y fecha final.

3. Para mostrar los registros coincidentes, selecciona una celda en blanco donde deseas que comience la lista extraída (por ejemplo, en Hoja2, celda A5). Ingresa la siguiente fórmula de matriz:

=IF(ROWS(A$5:A5)>$C$2,"",INDEX(Sheet1!A$2:A$22,SMALL(IF((Sheet1!$A$2:$A$22>=$A$2)*(Sheet1!$A$2:$A$22<=$B$2),ROW(Sheet1!A$2:A$22)-ROW(Sheet1!$A$2)+1),ROWS(A$5:A5))))

Después de escribir la fórmula, presiona Ctrl + Shift + Enter (en lugar de solo Enter) para que funcione como una fórmula de matriz. Luego usa el controlador de relleno para arrastrarla hacia la derecha a través de tantas columnas como tengas datos, y luego hacia abajo para que se muestren todas las filas coincidentes. Continúa arrastrando hasta que veas espacios en blanco, lo que significa que se han extraído todos los datos coincidentes.
A screenshot showing the extracted data using formulas

Consejos:

  • Si obtienes ceros, significa que no hay más registros coincidentes para devolver. Simplemente deja de arrastrar más.
  • La parte INDEX(...) de la fórmula se puede adaptar para extraer otras columnas. Cambia la columna referenciada en la parte Hoja1!A$2:A$22 si quieres devolver otros campos.
  • Esta fórmula se puede expandir para funcionar con múltiples criterios o para extraer filas completas (repitiendo la fórmula en cada columna).

4. Algunos resultados de fecha pueden aparecer como números de 5 dígitos (números de serie de fecha de Excel). Para convertirlos en un formato de fecha legible, selecciona las celdas correspondientes, ve a la pestaña Inicio , abre el menú desplegable de formato y elige Fecha corta. Esto hará que los datos extraídos sean más claros y útiles.
A screenshot of formatted dates

Precauciones:

  • Asegúrate de que todas las entradas de fecha en tus datos originales estén realmente en formato de fecha, no almacenadas como texto. De lo contrario, la fórmula puede no funcionar como se espera.
  • Ajusta los rangos de matriz si cambia el tamaño de tus datos.
  • Si ves errores #¡NUM! o #N/A, verifica si hay fechas de entrada en blanco o inconsistencias en tus datos fuente.

Extraer todos los registros entre dos fechas mediante Kutools para Excel

Si prefieres una solución más optimizada e interactiva, la función Seleccionar celdas específicas en Kutools para Excel puede ayudarte a extraer filas completas que coincidan con tu rango de fechas con solo unos pocos clics, minimizando la necesidad de fórmulas o ajustes manuales. Esto es particularmente adecuado para usuarios que manejan tareas de filtrado complejas o realizan operaciones por lotes en grandes conjuntos de datos, ya que reduce la probabilidad de errores en fórmulas y acelera el flujo de trabajo.

Kutools para Excel,equipado con inteligencia artificial 🤖, ofrece más de 300 funciones prácticas para simplificar tus tareas.

Después de instalar Kutools para Excel, sigue los siguientes pasos: (¡Descarga gratuita de Kutools para Excel ahora!)

1. Primero, selecciona el rango de tu conjunto de datos que deseas analizar y extraer. Luego, haz clic en Kutools > Seleccionar > Seleccionar celdas específicas desde la barra de herramientas de Excel. Esto abrirá una ventana de diálogo para selección avanzada.
A screenshot showing Kutools Select Specific Cells feature

2. En el cuadro de diálogo Seleccionar celdas específicas:

  • Marca la opción "Fila completa" para seleccionar filas completas coincidentes.
  • Establece la condición de filtro: elige Mayor que y Menor que en las listas desplegables para tu columna de fecha.
  • Ingresa manualmente tus fechas de inicio y fin en los cuadros de texto (asegúrate de que el formato coincida con tus datos).
  • Asegúrate de elegir la lógica “Y” para que ambas condiciones se apliquen al mismo tiempo.
Ver captura de pantalla:
A screenshot of the Select Specific Cells dialog with greater than and less than options

3. Haz clic en Aceptar. Kutools seleccionará instantáneamente todas las filas cuya columna de fecha caiga dentro de tu rango especificado. Luego, presiona Ctrl + C para copiar las filas seleccionadas, ve a una hoja en blanco o una nueva ubicación y presiona Ctrl + V para pegar los resultados extraídos.
A screenshot showing extracted rows after using Kutools to select and copy records between two dates

Consejos y precauciones:

  • El enfoque de Kutools no requiere cambiar tus datos originales ni escribir ninguna fórmula.
  • Si tienes inconsistencias en el formato de fecha, revisa los resultados de selección antes de copiarlos.
  • Usa la función para trabajos de filtrado repetidos u operaciones por lotes—repite los pasos rápidamente para diferentes rangos de fechas.
  • Si tu versión de Kutools no muestra una característica como se describe, actualiza a la última versión para obtener la mejor compatibilidad.

Análisis de escenario: Este método es ideal para usuarios que gestionan listas con muchas columnas o para aquellos que necesitan extraer repetidamente registros completos basándose en límites de fecha cambiantes.


Código VBA - Usa una macro para filtrar y extraer automáticamente todas las filas entre dos fechas especificadas

Si tu flujo de trabajo a menudo incluye la extracción de datos entre dos fechas y deseas automatizar completamente el proceso, usar una macro VBA puede ser una buena opción. Con VBA, puedes pedir a los usuarios que seleccionen la columna de fecha, ingresen fechas de inicio y fin, y filtren y copien automáticamente las filas coincidentes en una nueva hoja. Este enfoque ahorra esfuerzo manual y reduce errores, pero requiere habilitar macros y tener cierta familiaridad con el editor de Visual Basic.

Aquí te explicamos cómo configurar dicha macro:

1. Haz clic en Desarrollador > Visual Basic para abrir el editor de VBA. En la nueva ventana Microsoft Visual Basic para Aplicaciones, haz clic en Insertar > Módulo, luego copia y pega el siguiente código en el Módulo:

Sub ExtractRowsBetweenDates_Final()
'Updated by Extendoffice
    Dim wsSrc As Worksheet
    Dim wsDest As Worksheet
    Dim rngTable As Range
    Dim colDate As Range
    Dim StartDate As Date
    Dim EndDate As Date
    Dim i As Long
    Dim destRow As Long
    Dim dateColIndex As Long
    Dim cellDate As Variant

    Set wsSrc = ActiveSheet
    Set rngTable = Application.InputBox("Select the data table (including headers):", "KutoolsforExcel", Type:=8)
    If rngTable Is Nothing Then Exit Sub

    Set colDate = Application.InputBox("Select the date column (including header):", "KutoolsforExcel", Type:=8)
    If colDate Is Nothing Then Exit Sub

    On Error GoTo DateError
    StartDate = CDate(Application.InputBox("Enter the start date (yyyy-mm-dd):", "KutoolsforExcel", "", Type:=2))
    EndDate = CDate(Application.InputBox("Enter the end date (yyyy-mm-dd):", "KutoolsforExcel", "", Type:=2))
    On Error GoTo 0

    On Error Resume Next
    Set wsDest = Worksheets("FilteredRecords")
    On Error GoTo 0
    If wsDest Is Nothing Then
        Set wsDest = Worksheets.Add
        wsDest.Name = "FilteredRecords"
        
        rngTable.Rows(1).Copy
        wsDest.Cells(1, 1).PasteSpecial Paste:=xlPasteValuesAndNumberFormats
        wsDest.Cells(1, 1).PasteSpecial Paste:=xlPasteFormats
    End If

    destRow = wsDest.Cells(wsDest.Rows.Count, 1).End(xlUp).Row + 1
    dateColIndex = colDate.Column - rngTable.Columns(1).Column + 1

    For i = 2 To rngTable.Rows.Count
        cellDate = rngTable.Cells(i, dateColIndex).Value
        If IsDate(cellDate) Then
            If cellDate >= StartDate And cellDate <= EndDate Then
                rngTable.Rows(i).Copy
                wsDest.Cells(destRow, 1).PasteSpecial Paste:=xlPasteValuesAndNumberFormats
                wsDest.Cells(destRow, 1).PasteSpecial Paste:=xlPasteFormats
                destRow = destRow + 1
            End If
        End If
    Next i

    Application.CutCopyMode = False
    wsDest.Columns.AutoFit
    MsgBox "Filtered results have been added to '" & wsDest.Name & "'.", vbInformation
    Exit Sub

DateError:
    MsgBox "Invalid date format. Please enter dates as yyyy-mm-dd.", vbExclamation
End Sub

2. Para ejecutar la macro, haz clic en el Run button (Ejecutar) botón o presiona F5.

Luego sigue las indicaciones para completar los pasos:

  1. Selecciona la tabla de datos (incluyendo encabezados)
    Cuando aparezca la primera caja de entrada, selecciona toda la tabla, incluida la fila de encabezado. Haz clic en Aceptar.
  2. Selecciona la columna de fecha (incluyendo encabezado)
    Cuando aparezca la segunda caja de entrada, selecciona solo la columna de fecha, incluyendo el encabezado. Haz clic en Aceptar.
  3. Ingresa fechas de inicio y fin
    Se te pedirá que ingreses la fecha de inicio (formato: aaaa-mm-dd, por ejemplo, 2025-06-01)
    Luego ingresa la fecha final (por ejemplo, 2025-06-30)
    Haz clic en Aceptar después de cada una.

Una hoja de trabajo llamada RegistrosFiltrados se creará automáticamente (si aún no existe). Las filas coincidentes (donde la fecha cae entre las fechas de inicio y fin) se copiarán en esa hoja. Y cualquier nueva fila coincidente se agregará debajo de los resultados existentes cada vez que ejecutes la macro.

Solución de problemas:

  • Si no ocurre nada después de ejecutar, verifica tus rangos seleccionados—rangos inválidos o diálogos cancelados harán que la macro termine.
  • Asegúrate de que las entradas de tu columna de fecha sean verdaderas fechas de Excel; si están almacenadas como texto, conviértelas primero para garantizar un filtrado preciso.

Análisis de escenario: Esta solución VBA es particularmente valiosa para tareas repetitivas, flujos de trabajo avanzados, o cuando compartes una solución semi-automatizada con usuarios no técnicos—simplemente asigna un botón para una operación aún más fácil.


Otros métodos integrados de Excel - Usa la función Filtro integrada de Excel

Para usuarios que prefieren un enfoque simple e interactivo sin escribir fórmulas o código, la función Filtro integrada de Excel ofrece una manera rápida de ver y extraer filas entre dos fechas. Esto es ideal para tareas ocasionales, comprobaciones visuales o cuando necesitas trabajar directamente con la interfaz de la hoja de cálculo. Sin embargo, no proporciona actualizaciones automáticas si tus criterios de fecha o datos cambian—necesitarás repetir los pasos para cada nueva sesión de filtro.

Aquí te mostramos cómo usarlo:

  • Selecciona tu rango de datos, asegurándote de que los encabezados de columna estén incluidos.
  • Ve a la pestaña Datos en la cinta, luego haz clic en Filtro. Pequeñas flechas desplegables aparecerán junto a cada encabezado.
  • Haz clic en la flecha para tu columna de fecha y elige Filtros de fecha > Entre...
  • En el cuadro de diálogo, ingresa tus fechas de inicio y fin deseadas. Asegúrate de que el formato coincida con el formato de fecha de tus datos.
  • Haz clic en Aceptar. Solo las filas con fechas en tu rango especificado permanecerán visibles.
  • Selecciona todas las filas visibles, presiona Ctrl + C para copiar, ve a un área en blanco u otra hoja, y presiona Ctrl + V para pegar los resultados filtrados.

Consejos y precauciones:

  • Este método es mejor para inspecciones rápidas y visuales o extracciones ad-hoc.
  • Si tu columna de fecha usa formatos inconsistentes, corrígelos antes para asegurar que el filtro funcione con precisión.
  • Recuerda limpiar el filtro cuando termines para revelar nuevamente el conjunto completo de datos.
  • Las filas filtradas están ocultas, no eliminadas—tus datos originales permanecen intactos.

Análisis de escenario: El filtro integrado de Excel es más adecuado para tablas de tamaño moderado y cuando necesitas previsualizar o copiar subconjuntos al instante sin guardar fórmulas o macros.


Solución de problemas y sugerencias de resumen:

  • Siempre confirma que tus celdas de fecha están formateadas consistentemente en toda la hoja de trabajo para que todas las soluciones funcionen correctamente.
  • Al usar fórmulas o VBA, ajusta las referencias de columna y rango para que coincidan con la estructura real de tu hoja para evitar errores de índice o referencia.
  • Para el rendimiento en conjuntos de datos muy grandes, Kutools o el filtrado incorporado suelen ofrecer resultados más rápidos y es menos probable que excedan los límites de memoria/cálculo de fórmulas extensas en comparación con las fórmulas de matriz extensas.
  • Si encuentras espacios en blanco inesperados o registros faltantes en la salida, verifica nuevamente que tus condiciones de fecha, rangos de entrada y formatos de datos estén configurados según lo previsto.

Demostración: Extraer todos los registros entre dos fechas mediante Kutools para Excel

 
Kutools para Excel: ¡Más de 300 herramientas prácticas a su alcance! ¡Disfrute de funciones de IA permanentemente gratis! ¡Descárguelo ahora!

Las mejores herramientas de productividad para Office

🤖 Kutools AI Aide: Revoluciona el análisis de datos basado en: Ejecución inteligente | Generar código | Crear fórmulas personalizadas | Analizar datos y generar gráficos | Invocar Funciones mejoradas
Funciones populares: Buscar, resaltar o marcar duplicados | Eliminar filas en blanco | Combinar columnas o celdas sin perder datos | Redondear...
Super BUSCARV: Búsqueda por varios criterios | Búsqueda de varios valores | Búsqueda en varias hojas | Coincidencia difusa....
Lista desplegable avanzada: Crea rápidamente una lista desplegable | Lista desplegable dependiente | Lista desplegable de selección múltiple....
Administrador de columnas: Agregar un número específico de columnas | Mover columnas | Alternar el estado de visibilidad de columnas ocultas | Comparar rangos y columnas...
Funciones destacadas: Cuadrícula de enfoque | Vista de diseño | Barra de fórmulas mejorada | Administrador de Libro de trabajo y Hoja de cálculo | Biblioteca de AutoTexto | Selector de fechas | Combinar Datos | Cifrar/Descifrar celdas | Enviar correo electrónico por lista | Super Filtro | Filtro especial (filtrar celdas con fuente en negrita/cursiva/tachado...)...
Top15 conjuntos de herramientas:12 herramientas de texto (Agregar texto, Eliminar caracteres específicos, ...) | Más de50 tipos de gráficos (Diagrama de Gantt, ...) | Más de40 fórmulas prácticas (Calcular edad basada en la fecha de nacimiento, ...) |19 herramientas de inserción (Insertar código QR, Insertar imagen desde ruta, ...) |12 herramientas de conversión (Convertir a palabras, Conversión de moneda, ...) |7 herramientas para combinar y dividir (Combinar filas avanzado, Dividir celdas, ...) | ... y más

Potencia tus habilidades en Excel con Kutools para Excel y experimenta una eficiencia sin precedentes. Kutools para Excel ofrece más de300 funciones avanzadas para aumentar la productividad y ahorrar tiempo. Haz clic aquí para obtener la función que más necesitas...


Office Tab lleva la interfaz de pestañas a Office y facilita mucho tu trabajo

  • Habilita la edición y lectura con pestañas en Word, Excel, PowerPoint, Publisher, Access, Visio y Project.
  • Abre y crea varios documentos en nuevas pestañas de la misma ventana, en lugar de nuevas ventanas.
  • ¡Aumenta tu productividad en un50% y reduce cientos de clics de ratón cada día!