如何在 Excel 中筛选出工作日和周末?
在数据分析或考勤跟踪中,您可能经常需要从 Excel 的长列表中快速筛选出周末或工作日日期——例如,高亮显示星期六和星期日以统计加班时间,或聚焦于工作日以分析有效工作天数。然而,当日期以标准格式(如 06/07/2012)呈现时,很难直观判断其属于周末还是工作日,导致手动筛选不仅效率低下,还容易出错。本文为您介绍多种实用方法,助您轻松区分并高效筛选工作日或周末,包括 Excel 内置功能、灵活公式、VBA 自动化脚本,以及像 Kutools for Excel 这样用户友好的插件。掌握并应用这些技巧,您将显著简化工作流程、减少手动操作,并有效降低日期分析中的误分类风险。
➤ 使用函数筛选工作日和周末
➤ 使用 Kutools for Excel 筛选工作日和周末
➤ 使用 Kutools for Excel 的超级筛选功能筛选工作日和周末
➤ 使用 VBA 宏自动筛选或突出显示工作日或周末
➤ 使用高级筛选结合自定义条件筛选工作日和周末
使用函数筛选工作日和周末
Microsoft Excel 的 WEEKDAY 函数会返回一个从 1 到 7 的序列号,表示给定日期对应的星期。默认情况下(即未使用第二个参数时),1 代表星期日,7 代表星期六。例如,若日期为星期日,函数返回 1;若为星期五,结果则为 6. 借助此功能,您可轻松识别周末或工作日,并据此进行高效筛选。
此方法适用于大多数常规数据表,既能提供完全控制,又仅需一个辅助列。
步骤 1: 在日期列旁边的空白列中(例如单元格 )C2),输入以下公式以获取工作日索引:
=WEEKDAY(B2) 
步骤 2: 按下 Enter 键,然后拖动填充柄向下将公式应用至其余日期行,每行即可显示对应的工作日编号。

步骤 3: 转到功能区中的数据> 筛选,启用筛选功能。如果您先在数据集中选中一个单元格,Excel 将自动选中整个数据区域。
步骤 4: 每列标题中将出现一个下拉箭头
。单击辅助列(例如“工作日”)上的筛选箭头,勾选 1 和 7,即可筛选出周末(星期日和星期六)。

步骤 5: 在筛选菜单中单击确定,Excel 将仅显示符合您所选周末日期(1 和 7)的行。

注意:如果只想筛选工作日(星期一至星期五),请勾选 2、3、4、5 和 6.
提示与提醒:
- 如果您的地区以其他日期作为一周的开始日,请使用
=WEEKDAY(B2, 2),让星期一 = 1、星期日 = 7,并相应调整筛选条件。 - 日期列中的空白单元格可能引发意外结果——如有需要,请先清理数据。
- 始终将公式向下拖动至所有行,确保筛选结果精准无误。
使用 Kutools for Excel 筛选工作日和周末
使用 Excel 内置方法通常需要借助辅助列来区分工作日和周末。而 Kutools for Excel 提供了更直接的解决方案:您可直接通过日期格式显示工作日名称,或将其转换为纯文本,轻松实现筛选。
Kutools for Excel——包含 300 多个 Excel 必备工具,并永久免费畅享 AI 功能!立即下载!
步骤 1: 选择要转换的日期范围。
步骤 2: 转到 Kutools 选项卡,单击格式 > 应用日期格式,即可弹出一个对话框。
步骤 3: 在对话框的日期格式列表中,选择 Wed 或 Wednesday 格式之一,以显示工作日名称。

步骤 4: 单击确定。所选日期现在将显示为工作日名称。如果您希望将其作为文本(而非日期)进行筛选,请单击 Kutools 的转为实际值工具,将格式化结果转换为静态文本。
步骤 5: 转到数据> 筛选。在筛选下拉菜单中
,勾选 Sat 和 Sun,即可仅显示周末数据。这种方法比使用工作日编号更直观清晰。

步骤 6: 单击确定,筛选结果中将仅显示周末(星期六和星期日)。

注释:
- 若仅筛选工作日,请在步骤 5 中勾选 Mon、Tue、Wed、Thu 和 Fri。
- 为保留原始日期值,建议在应用格式和筛选前将其复制到辅助列。
- 应用日期格式和 To Actual 工具在准备用于报告或导出的清晰、易读的工作日数据时非常实用。
Kutools for Excel——通过 300 多款必备工具全面增强 Excel 功能,助您工作更快速、更轻松,并借助 AI 功能实现更智能的数据处理与高效办公!立即获取
使用 Kutools for Excel 的超级筛选功能筛选工作日和周末
Kutools for Excel 的超级筛选工具可提供高效解决方案,让您无需更改原始数据格式,即可按工作日或周末筛选日期。
Kutools for Excel——包含 300 多个 Excel 必备工具,并永久免费畅享 AI 功能!立即下载!
此方法适用于需要多条件筛选、不希望修改原始数据,或需通过图形界面执行重复筛选任务的用户。
步骤 1: 单击 KUTOOLS PLUS 中的超级筛选,即可在工作簿中启用超级筛选窗格。
步骤 2: 在超级筛选窗格中执行以下操作:

1) 单击 Browse 按钮,选择要筛选的数据区域。
2) 将鼠标悬停在 OR 标签上以展开条件编辑器,然后配置筛选条件:
- 在第一个框中选择列名(例如 )Date)。
- 在第二个框中选择 Week。
- 在第三个框中选择 Equals。
- 在最后一个框中选择从 1 到 7 的数字。例如,1 = 星期日,7 = 星期六。
注意:数字 1–7 分别代表星期日至星期六。若您的周起始日不同或区域设置有异,请相应调整条件。
3) 单击 Filter 按钮即可应用筛选。
数据现在将仅显示符合您指定日期的行——例如,如果您选择了 Sunday,则会显示 1.

如果要筛选所有周末(星期六和星期日),请添加两个条件:
- Date>Week>Equals>1
- Date>Week>Equals>7
确保它们之间的逻辑关系设置为 OR。

若仅筛选工作日(星期一至星期五),请应用以下设置:
- Date>Week>Does not equal>1
- Date>Week>Does not equal>7
请确保这些条件之间的逻辑运算符设置为 AND。

关键要点与建议:
- 超级筛选支持复杂的多层筛选,涵盖日期范围、数值及文本字段。
- 您可以保存并重复使用筛选配置,非常适合用于定期报告或批量数据审查。
了解更多关于超级筛选工具的信息。
Kutools for Excel——通过 300 多款必备工具全面增强 Excel 功能,助您工作更快速、更轻松,并借助 AI 功能实现更智能的数据处理与高效办公!立即获取
使用 VBA 宏自动筛选或高亮显示工作日和周末
如果您处理大型数据集、需要自动化操作,或经常筛选/高亮显示工作日和周末,使用 VBA 宏可以保存时间并减少重复的手动操作。此方法适用于高级用户或熟悉 Excel 宏的用户,且无需辅助列或第三方插件。在继续操作前,请确保已启用宏并信任该工作簿。
步骤 1: 按 Alt + F11 打开 Microsoft Visual Basic for Applications 编辑器,然后单击插入> 模块,并将以下 VBA 代码粘贴到模块窗口中:
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 步骤 2: 关闭 VBA 编辑器。要运行宏,请按 Alt + F8,从列表中选择 FilterWeekendDates,然后单击运行。此时将弹出对话框,提示您选择一个不含标题的单列日期范围。宏将自动隐藏所有非周末行,仅保留星期六和星期日可见。
如果您希望筛选工作日而非周末,请按如下方式更新循环内的代码行:
原始代码:
If weekDayNum 1 And weekDayNum 7 Then
修改为:
If weekDayNum = 1 Or weekDayNum = 7 Then
此修改将隐藏周末(星期六和星期日),并仅显示工作日(星期一至星期五)。
提示与说明:
- 在此脚本中,
Weekday(cell.Value, vbSunday)表示星期日 = 1、星期六 = 7,这是美国区域设置的默认规则。若您的区域设置以星期一作为一周的开始日,请相应调整逻辑。 - 若要突出显示周末而非筛选,请结合条件格式使用以下公式:
=OR(WEEKDAY(A2,1)=1,WEEKDAY(A2,1)=7)(假设您的日期位于 A 列)。 - 此宏仅在视觉上隐藏行,数据不会被删除。您可通过移除筛选器或运行
ws.Rows.Hidden = False即可轻松取消隐藏。
故障排除:
- 如果宏未运行,请确保已在 Excel 信任中心启用宏。
- 请确保所选区域包含有效的日期值,因为文本格式或空白单元格可能会被误判并隐藏。
- 运行后若无任何反应,请检查是否已正确选择区域,并确认所选列数恰好为一列。
使用高级筛选与自定义条件筛选工作日和周末
Excel 的高级筛选功能让您无需辅助列或插件,即可在原位置筛选数据,或将结果复制到其他位置。通过在条件区域中使用基于 WEEKDAY 函数的自定义公式,您能灵活筛选出仅工作日、仅周末,甚至特定日期的数据。此方法适用于临时一次性筛选,避免因在工作表中添加额外列而造成混乱。
请按照以下步骤使用高级筛选来筛选工作日/周末:
- 步骤 1: 确保您的数据包含标题。例如,假设日期位于 B 列(标题为“Date”)。
- 步骤 2: 在工作表的其他位置设置条件区域。在条件区域的标题单元格(例如 )D1)中输入与日期列相同的标题(“Date”)。在其下方的单元格(例如 D2)中输入以下公式,即可筛选周末:
=OR(WEEKDAY(B2)=1, WEEKDAY(B2)=7) - 步骤 3: 选择原始数据。转到 Data>Advanced(位于“排序和筛选”组中)。
- 步骤 4: 在“高级筛选”对话框中设置:
- 列表区域:您的原始数据(包括标题)
- 条件区域:您的条件块(标题和公式单元格)
- 选择是在原位置筛选列表,还是复制到其他位置
- 步骤 5: 单击 OK,即可仅显示周末日期(或根据所选项进行复制)。
若要筛选工作日:
在“日期”标题下方的条件单元格中使用以下公式:
=AND(WEEKDAY(B2)>1, WEEKDAY(B2)<7) 实用说明:
- 条件单元格中的公式应引用日期列中的首个数据单元格(例如 B2)。
- 无需将公式作为数组输入,直接以普通公式输入即可。
- 高级筛选最适合用于创建临时视图或进行筛选导出,尤其当您不希望添加辅助列时。
限制:
- 新增数据后,必须重新应用高级筛选。
- 条件区域中的标题必须与数据集中的列名完全一致。
常见错误与故障排除:
- 请确保公式引用了正确的单元格(例如,若 B 列为日期列,则应引用 B2)。
- 若未返回任何数据,请在示例行上手动测试公式,以确保逻辑正确无误。
演示:在 Excel 中筛选工作日和周末
最佳办公效率工具
| 🤖 | KUTOOLS AI 助手:基于以下内容革新数据分析:智能执行 | 生成代码| 创建自定义公式 | 数据分析及生成图表| 调用 Kutools Functions…… |
| 热门功能:查找、高亮或标记重复项 | 删除空白行 | 合并列或单元格且不丢失数据 | 不使用公式的四舍五入…… | |
| 高级 LOOKUP:多条件 VLookup | 多值 VLookup | 跨多工作表 VLookup | 模糊查找…… | |
| 高级下拉列表:快速创建下拉列表 | 级联下拉列表 | 多选下拉列表…… | |
| 列管理器:添加指定数量的列|移动列|切换隐藏列的可见性状态|比较区域与列…… | |
| 特色功能:网格聚焦 | 设计视图 |增强编辑栏 | 工作簿和表管理器 | 资源库(自动文本)| 日期提取 | 汇总工作表 | 加密/解密单元格 | 按列表发送邮件 | 超级筛选 | 特殊筛选(筛选粗体单元格/斜体/删除线……) ...... | |
| 精选 15 工具集:12 文本工具(添加文本,删除特定字符,……)| 50+ 图表 类型(甘特图,……)| 40+ 实用公式(基于生日计算年龄,……)| 19 插入工具(插入二维码,从路径插入图片,……)| 12 转换工具(小写金额转大写,汇率转换,……)| 7 合并和拆分工具(高级合并行,分割单元格,……)|……更多 |
使用 Kutools for Excel 大幅提升您的 Excel 技能,体验前所未有的高效。Kutools for Excel 提供 300 多项高级功能,助您提升生产力、节省时间。立即点击此处,获取您最需要的功能……
Office Tab 为 Office 带来标签式界面,让您的工作更轻松
- 在 Word、Excel、PowerPoint、Publisher、Access、Visio 和 Project 中启用标签式编辑和阅读。
- 在同一个窗口的新标签页中打开并创建多个文档,而非在新窗口中。
- 将您的工作效率提升 50%,每天减少数百次鼠标点击!
所有 Kutools 插件,一个安装程序
Kutools for Office 套件捆绑了适用于 Excel、Word、Outlook 和 PowerPoint 的插件以及 Office Tab Pro,非常适合需要跨多个 Office 应用高效协作的团队。
- 一体化套件— Excel、Word、Outlook 和 PowerPoint 插件 + Office Tab Pro
- 一个安装程序,一个许可证— 几分钟内完成设置(支持 MSI)
- 协同效果更佳— 在多个 Office 应用中实现高效协同
- 30 天全功能试用— 无需注册,无需信用卡
- 超值之选— 比单独购买插件更省钱