¿Cómo filtrar días laborables y fines de semana en Excel?
En el análisis de datos o el seguimiento de asistencia, es posible que a menudo necesite filtrar fechas de fin de semana o días laborables de una larga lista en Excel, como resaltar solo los sábados y domingos para cálculos de horas extras, o centrarse en los días laborables para analizar días de trabajo. Cuando las fechas se muestran en formatos estándar como 06/07/2012, no siempre es obvio si cada fecha cae en un fin de semana o un día laborable, lo que hace que el filtrado manual sea ineficiente y propenso a errores. Este artículo proporciona varios métodos prácticos para distinguir y filtrar rápidamente días laborables o fines de semana, incluidos métodos integrados de Excel, fórmulas útiles, automatización con VBA y complementos amigables como Kutools for Excel. Al aprender y aplicar estas técnicas, podrá agilizar flujos de trabajo, minimizar la clasificación manual y reducir la clasificación errónea accidental en sus tareas de análisis de fechas.
➤ Filtrar días laborables y fines de semana con funciones
➤ Filtrar días laborables y fines de semana con Kutools para Excel
➤ Filtrar días laborables y fines de semana con la utilidad Super Filtro de Kutools para Excel
➤ Usar Macro VBA para Filtrar o Resaltar Días Laborables o Fines de Semana Automáticamente
➤ Filtrar Días Laborables y Fines de Semana Usando Filtro Avanzado con Criterios Personalizados
Filtrar días laborables y fines de semana con funciones
La función DIASEM de Microsoft Excel devuelve un número de serie del 1 al 7, que representa el día de la semana para una fecha dada. Por defecto (cuando no se usa ningún segundo argumento), 1 representa el Domingo y 7 el Sábado. Por ejemplo, si la fecha es Domingo, la función devuelve 1; si es Viernes, el resultado es 6. Esto le permite identificar fines de semana o días laborables y filtrarlos en consecuencia.
Este método es adecuado para la mayoría de las tablas de datos generales y le da control total, pero requiere una columna auxiliar.
Paso 1: En una columna en blanco junto a su columna de fechas (por ejemplo, en la celda C2), ingrese la siguiente fórmula para obtener el índice del día de la semana:
=WEEKDAY(B2)
Paso 2: Presione Entrar, luego arrastre el controlador de relleno hacia abajo para aplicar la fórmula al resto de sus filas de fechas. Cada fila ahora mostrará un número de día de la semana.
Paso 3: Vaya a Datos > Filtro en la cinta para habilitar el filtrado. Excel seleccionará automáticamente el bloque de datos si primero selecciona una celda dentro de su conjunto de datos.
Paso 4: Aparecerá una flecha desplegable en el encabezado de cada columna. Haga clic en la flecha de filtro en su columna auxiliar (por ejemplo, Día de la semana) y marque las casillas para 1 y 7 para filtrar fines de semana (domingo y sábado).
Paso 5: Haga clic en Aceptar en el menú de filtro. Excel ahora mostrará solo las fechas de fin de semana que coincidan con su selección (1 y 7).
Nota: Si desea filtrar solo días laborables (lunes a viernes), marque las casillas para 2, 3, 4, 5 y 6.
Consejos y recordatorios:
- Si su región comienza la semana en un día diferente, use
=DIASEM(B2, 2)
para que Lunes = 1 y Domingo = 7. Ajuste los filtros en consecuencia. - Las celdas en blanco en su columna de fechas pueden devolver resultados inesperados—limpie sus datos si es necesario.
- Siempre arrastre la fórmula hacia abajo en todas las filas para asegurar una precisión completa en el filtrado.
Filtrar días laborables y fines de semana con Kutools para Excel
Usar el método integrado de Excel generalmente requiere una columna auxiliar para distinguir entre días laborables y fines de semana. Alternativamente, Kutools para Excel ofrece una solución más directa: puede mostrar nombres de días directamente usando formato de fecha, o convertirlos en texto plano para facilitar el filtrado. La herramienta Aplicar Formato de Fecha en Kutools hace que este proceso sea rápido y fácil.
Kutools para Excel - Cargado con más de 300 herramientas esenciales para Excel. ¡Disfruta de funciones de IA permanentemente gratis! ¡Descarga ahora!
Paso 1: Seleccione el rango de fechas que desea convertir.
Paso 2: Vaya a la pestaña Kutools, haga clic en Formato > Aplicar Formato de Fecha. Aparecerá una ventana de diálogo.
Paso 3: En la ventana de diálogo, seleccione el formato Mié o Miércoles de la lista de formatos de fecha para mostrar nombres de días.
Paso 4: Haga clic en Aceptar. Las fechas seleccionadas ahora se muestran como nombres de días. Si desea filtrarlas como texto en lugar de como fechas, haga clic en Kutools > A Reales para convertir los resultados formateados en texto estático.
Paso 5: Vaya a Datos > Filtro. En el menú desplegable del filtro marque Sáb y Dom para mostrar solo fines de semana. Este enfoque es visualmente más claro que usar números de días de la semana.
Paso 6: Haga clic en Aceptar. Solo los fines de semana (sábado y domingo) se mostrarán en los resultados filtrados.
Notas:
- Para filtrar solo días laborables, marque Lun, Mar, Mié, Jue, y Vie en el Paso 5.
- Para conservar sus valores originales de fecha, considere copiarlos a una columna auxiliar antes de aplicar formato y filtrado.
- Las herramientas Aplicar Formato de Fecha y A Reales son útiles cuando se preparan datos limpios y legibles sobre días laborables para informes o exportaciones.
Más información sobre estas herramientas:
- Aplicar Formato de Fecha
- A Reales
Kutools para Excel - Potencia Excel con más de 300 herramientas esenciales. ¡Disfruta de funciones de IA gratis permanentemente! Consíguelo ahora
Filtrar días laborables y fines de semana con la utilidad Super Filtro de Kutools para Excel
Si desea filtrar fechas por días laborables o fines de semana sin alterar el formato de datos original, la utilidad Super Filtro de Kutools para Excel proporciona una solución eficiente.
Kutools para Excel - Cargado con más de 300 herramientas esenciales para Excel. ¡Disfruta de funciones de IA permanentemente gratis! ¡Descarga ahora!
Este método es ideal para usuarios que necesitan filtrado multicondicional, prefieren no modificar datos crudos o requieren una interfaz gráfica para tareas de filtrado repetitivas.
Paso 1: Haga clic en Kutools Plus > Super Filtro para habilitar el panel Super Filtro en el libro.
Paso 2: En el panel Super Filtro, realice las siguientes acciones:

1) Haga clic en el botón Examinar y seleccione el rango de datos que desea filtrar.
2) Pase el cursor sobre la etiqueta O para expandir el editor de condiciones, luego configure los criterios de filtro:
- Seleccione el nombre de la columna (por ejemplo, Fecha) en el primer cuadro.
- Seleccione Semana en el segundo cuadro.
- Seleccione Igual en el tercer cuadro.
- Seleccione un número del 1 al 7 en el último cuadro. Por ejemplo, 1 = Domingo, 7 = Sábado.
Nota: Los números del 1 al 7 representan respectivamente Domingo a Sábado. Ajuste los criterios si su semana comienza en un día diferente o utiliza configuraciones regionales distintas.
3) Haga clic en el botón Filtrar para aplicar.
Los datos ahora mostrarán solo las filas que coincidan con el día especificado—por ejemplo, Domingo si seleccionó 1.
Si desea filtrar todos los fines de semana (sábado y domingo), agregue dos condiciones:
- Fecha > Semana > Igual > 1
- Fecha > Semana > Igual > 7
Asegúrese de que la lógica entre ellos esté configurada en O.
Para filtrar solo días laborables (lunes a viernes), aplique lo siguiente:
- Fecha > Semana > No igual a > 1
- Fecha > Semana > No igual a > 7
Asegúrese de que el operador lógico entre estas condiciones esté configurado en Y.
Puntos clave y sugerencias:
- Super Filtro admite filtros complejos y multinivel, incluidos rangos de fechas, valores y campos de texto.
- Puede guardar y reutilizar configuraciones de filtro, lo cual es ideal para informes recurrentes o revisiones de datos por lotes.
Más información sobre la utilidad Super Filtro.
Kutools para Excel - Potencia Excel con más de 300 herramientas esenciales. ¡Disfruta de funciones de IA gratis permanentemente! Consíguelo ahora
Usar Macro VBA para Filtrar o Resaltar Días Laborables o Fines de Semana Automáticamente
Si está trabajando con grandes conjuntos de datos, necesita automatización, o frecuentemente filtra o resalta días laborables y fines de semana, usar una macro VBA puede ahorrar tiempo y reducir el trabajo manual repetitivo. Este enfoque es adecuado para usuarios avanzados o aquellos familiarizados con macros de Excel, y elimina la necesidad de columnas auxiliares o complementos de terceros. Asegúrese de que las macros estén habilitadas y que el libro sea de confianza antes de proceder.
Paso 1: Presione Alt + F11 para abrir el editor de Microsoft Visual Basic para Aplicaciones. Luego haga clic en Insertar > Módulo y pegue el siguiente código VBA en la ventana del módulo:
Sub FilterWeekendDates()
Dim rng As Range
Dim cell As Range
Dim ws As Worksheet
Dim weekDayNum As Integer
Set ws = ActiveSheet
On Error Resume Next
Set rng = Application.InputBox("Select the date range to filter (single column, without header):", "Filter Weekends Only", Type:=8)
On Error GoTo 0
If rng Is Nothing Then Exit Sub
If rng.Columns.Count > 1 Then
MsgBox "Please select only one column.", vbExclamation
Exit Sub
End If
Application.ScreenUpdating = False
ws.Rows.Hidden = False
For Each cell In rng
If IsDate(cell.Value) Then
weekDayNum = Weekday(cell.Value, vbSunday)
If weekDayNum <> 1 And weekDayNum <> 7 Then
cell.EntireRow.Hidden = True
End If
Else
cell.EntireRow.Hidden = True
End If
Next cell
Application.ScreenUpdating = True
End Sub
Paso 2: Cierre el editor VBA. Para ejecutar la macro, presione Alt + F8, seleccione FilterWeekendDates de la lista y haga clic en Ejecutar. Aparecerá un cuadro de diálogo solicitándole que seleccione un rango de fechas de una sola columna (excluyendo el encabezado). La macro ocultará todas las filas que no caigan en fines de semana (sábado y domingo permanecerán visibles).
Si desea filtrar días laborables en lugar de fines de semana, actualice la línea de código dentro del bucle de la siguiente manera:
Original:
If weekDayNum <> 1 And weekDayNum <> 7 Then
Cambiar a:
If weekDayNum = 1 Or weekDayNum = 7 Then
Este cambio ocultará los fines de semana (domingo y sábado) y mostrará solo días laborables (lunes a viernes).
Consejos y notas:
- En este script,
DIASEM(celda.Valor, vbDomingo)
significa Domingo = 1 y Sábado = 7, que es el valor predeterminado en configuraciones regionales de EE.UU. Ajuste la lógica si su configuración regional define el lunes como el inicio de la semana. - Para resaltar fines de semana en lugar de filtrar, use Formato Condicional con esta fórmula:
=OR(WEEKDAY(A2,1)=1,WEEKDAY(A2,1)=7)
(suponiendo que su fecha está en la columna A). - Esta macro solo oculta filas visualmente. Los datos no se eliminan y pueden mostrarse nuevamente eliminando los filtros o ejecutando
ws.Filas.Ocultas = Falso
.
Solución de problemas:
- Si la macro no se ejecuta, asegúrese de que las macros estén habilitadas en el Centro de Confianza de Excel.
- Asegúrese de que el rango seleccionado contenga valores de fecha válidos. Las celdas con formato de texto o en blanco pueden malinterpretarse y ocultarse.
- Si no ocurre nada después de ejecutarla, verifique si el rango fue seleccionado correctamente y que el recuento de columnas es exactamente uno.
Filtrar Días Laborables y Fines de Semana Usando Filtro Avanzado con Criterios Personalizados
La característica Filtro Avanzado de Excel le permite filtrar datos en su lugar o copiar resultados en otro lugar utilizando criterios personalizados, sin necesidad de columnas auxiliares o complementos. Al aprovechar una fórmula personalizada basada en la función DIASEM
en el rango de criterios, puede mostrar flexiblemente solo días laborables, solo fines de semana o incluso días específicos. Este método es eficiente para filtrados temporales y evita llenar su hoja de trabajo con columnas adicionales.
Siga estos pasos para usar Filtro Avanzado para filtrar días laborables/fines de semana:
- Paso 1: Asegúrese de que sus datos tengan encabezados. Por ejemplo, suponga que sus fechas están en la columna B (encabezado: Fecha).
- Paso 2: Configure un rango de criterios en otra parte de su hoja. En la celda de encabezado del rango de criterios (por ejemplo, D1), ingrese el mismo encabezado que su columna de fechas ("Fecha"). En la celda debajo de ella (por ejemplo, D2), ingrese esta fórmula para filtrar fines de semana:
=OR(WEEKDAY(B2)=1, WEEKDAY(B2)=7)
- Paso 3: Seleccione sus datos originales. Vaya a Datos > Avanzado en el grupo Ordenar y Filtrar.
- Paso 4: En el cuadro de diálogo Filtro Avanzado, configure:
- Rango de lista: sus datos originales, incluidos encabezados
- Rango de criterios: su bloque de criterios (encabezados y celda de fórmula)
- Elija si desea Filtrar la lista en su lugar o Copiar a otra ubicación
- Paso 5: Haga clic en Aceptar. Solo las fechas de fin de semana se mostrarán (o se copiarán, si se seleccionó esa opción).
Para filtrar días laborables en su lugar:
Use esta fórmula en su celda de criterios debajo del encabezado "Fecha":
=AND(WEEKDAY(B2)>1, WEEKDAY(B2)<7)
Notas prácticas:
- La fórmula en la celda de criterios debe hacer referencia a la primera celda de datos en su columna de fechas (por ejemplo, B2).
- Evite ingresar la fórmula como una matriz; simplemente escríbala como una fórmula normal.
- Filtro Avanzado es mejor para vistas temporales o exportaciones filtradas cuando no desea agregar columnas auxiliares.
Limitaciones:
- Si se agregan nuevos datos, debe volver a aplicar el Filtro Avanzado.
- El encabezado en su rango de criterios debe coincidir exactamente con el nombre de columna en su conjunto de datos.
Errores comunes y solución de problemas:
- Asegúrese de que la fórmula haga referencia a la celda correcta (por ejemplo, B2 si B es la columna de fechas).
- Si no se devuelve ningún dato, pruebe la fórmula manualmente en una fila de muestra para confirmar la lógica.
Demo: filtrar días laborables y fines de semana en Excel
Las mejores herramientas de productividad para Office
Mejora tu dominio de 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 incorpora la interfaz de pestañas en 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 hacerlo en ventanas separadas.
- ¡Aumenta tu productividad en un50% y reduce cientos de clics de ratón cada día!
Todos los complementos de Kutools. Un solo instalador
El paquete Kutools for Office agrupa complementos para Excel, Word, Outlook y PowerPoint junto con Office Tab Pro, ideal para equipos que trabajan en varias aplicaciones de Office.





- Suite todo en uno: complementos para Excel, Word, Outlook y PowerPoint + Office Tab Pro
- Un solo instalador, una licencia: configuración en minutos (compatible con MSI)
- Mejor juntos: productividad optimizada en todas las aplicaciones de Office
- Prueba completa de30 días: sin registro ni tarjeta de crédito
- La mejor relación calidad-precio: ahorra en comparación con la compra individual de complementos