Skip to main content

Kutools for Office — 一套工具,五種功能。完成更多工作。

如何在Excel中篩選工作日和週末?

Author Kelly Last modified

在數據分析或考勤追蹤中,您可能經常需要從Excel的長列表中篩選出週末或工作日日期,例如僅高亮顯示星期六和星期日以計算加班,或專注於工作日來分析工作天數。當日期以標準格式(如06/07/2012)顯示時,很難一眼看出每個日期是落在週末還是工作日,這樣的手動篩選既低效又容易出錯。本文提供了幾種實用方法,可快速區分並篩選工作日或週末,包括內建的Excel方法、有用的公式、VBA自動化以及像Kutools for Excel這樣的友好插件。通過學習和應用這些技術,您將能夠簡化工作流程,減少手動排序,並降低在日期分析任務中的意外錯誤分類。


使用函數篩選工作日和週末

Microsoft Excel的WEEKDAY函數返回一個從17的序列號,代表給定日期的星期幾。默認情況下(當不使用第二個參數時),1代表星期日,7代表星期六。例如,如果日期是星期日,該函數返回1;如果是星期五,結果是6。這使您可以識別週末或工作日並相應地進行篩選。

此方法適用於大多數一般數據表,並提供完全的控制,但需要輔助列。

步驟1:在日期列旁邊的空白列中(例如,單元格C2),輸入以下公式以獲取星期索引:

=WEEKDAY(B2)

a screenshot showing how to use the WEEKDAY function

步驟2:按下Enter鍵,然後拖動填充柄向下應用公式到其他日期行。每一行現在都會顯示一個星期數字。

a screenshot of the formula results

步驟3:轉到功能區上的資料 > 篩選以啟用篩選。如果您首先選擇數據集內的一個單元格,Excel會自動選擇數據塊。

步驟4: 下拉箭頭 drop-down arrow 將會出現在每個欄位標題中。點擊輔助列上的篩選箭頭(例如,星期幾),然後勾選 17 以篩選週末(星期日和星期六)。

a screenshot of checking the number 1 and 7 in the filter list

步驟5:在篩選菜單中點擊確定。Excel現在將只顯示符合選擇的週末日期(1和7)。

a screenshot of the filtered result

注意:如果只想篩選工作日(星期一至星期五),請勾選23456

提示和提醒:

  • 如果您的地區一週從不同的日子開始,請使用=WEEKDAY(B2, 2),這樣星期一=1,星期日=7。根據需要調整篩選。
  • 日期列中的空白單元格可能會返回意外結果——如有必要,請清理您的數據。
  • 始終將公式拖動到所有行,以確保篩選準確性。

使用Kutools for Excel篩選工作日和週末

使用Excel內建的方法通常需要輔助列來區分工作日和週末。或者,Kutools for Excel提供了一個更直接的解決方案:您可以使用日期格式直接顯示星期幾名稱,或將其轉換為純文本以便更容易篩選。Kutools中的應用日期格式工具使這一過程快速且簡單。

Kutools for Excel - 包含超過 300 種 Excel 必備工具。永久免費享受 AI 功能!立即下載!

步驟1:選擇要轉換的日期範圍。

步驟2:轉到Kutools標籤,點擊格式 > 應用日期格式。將出現一個對話框。

步驟3:在對話框中,從日期格式列表中選擇WedWednesday格式以顯示星期幾名稱。

Select weekday format in Apply Date Formatting dialog

步驟4:點擊確定。所選日期現在顯示為星期幾名稱。如果您想將它們作為文本而非日期進行篩選,點擊Kutools > 轉為實際值以將格式化結果轉換為靜態文本。

步驟5: 轉到 資料 > 篩選。在篩選下拉 Drop-down filter icon中,勾選 SatSun 以僅顯示週末。這種方法比使用星期數字更加直觀清晰。

Select weekend filter values

步驟6:點擊確定。只有週末(星期六和星期日)會顯示在篩選結果中。

Weekend filter results

注意事項:

  • 如需篩選工作日,在步驟5中勾選MonTueWedThuFri
  • 為了保留原始日期值,考慮在應用格式和篩選之前將它們複製到輔助列。
  • 應用日期格式轉為實際值工具在準備乾淨、易讀的星期數據以供報告或導出時非常有用。

了解更多有關這些工具的信息:
- 應用日期格式
- 轉為實際值

Kutools for Excel - 超過 300 種必備工具,讓 Excel 功能更強大。永久免費享受 AI 功能!立即獲取


使用Kutools for Excel的超級篩選工具篩選工作日和週末

如果您希望按工作日或週末篩選日期而不改變原始數據格式,Kutools for Excel超級篩選工具提供了一個高效的解決方案。

Kutools for Excel - 包含超過 300 種 Excel 必備工具。永久免費享受 AI 功能!立即下載!

此方法非常適合需要多條件篩選、不願修改原始數據或需要圖形界面進行重複篩選任務的用戶。

步驟1:點擊Kutools Plus > 超級篩選以在工作簿中啟用超級篩選窗格。

步驟2:在超級篩選窗格中,執行以下操作:

Configure the Super Filter pane

1) 點擊瀏覽按鈕並選擇要篩選的數據範圍。

2) 將鼠標懸停在OR標籤上以展開條件編輯器,然後配置篩選條件:

  • 在第一個框中選擇列名(例如,日期)。
  • 在第二個框中選擇
  • 在第三個框中選擇等於
  • 在最後一個框中選擇1到7之間的數字。例如,1 = 星期日,7 = 星期六。

注意:數字1-7分別代表星期日至星期六。如果您的星期從不同日子開始或使用不同的地區設置,請調整條件。

3) 點擊篩選按鈕以應用。

數據現在將僅顯示符合指定日期的行——例如,如果選擇了1,則顯示星期日

Filter result for Sunday only

如果要篩選所有週末(星期六和星期日),添加兩個條件:

  • 日期 > > 等於 > 1
  • 日期 > > 等於 > 7

確保它們之間的邏輯設定為OR

Weekend filter result

要篩選僅限工作日(星期一至星期五),請應用以下條件:

  • 日期 > > 不等於 > 1
  • 日期 > > 不等於 > 7

確保這些條件之間的邏輯運算符設定為AND

Filter weekdays only

關鍵點和建議:

  • 超級篩選支持複雜的多層次篩選,包括日期範圍、值和文本字段。
  • 您可以保存並重複使用篩選配置,這對於定期報告或批量數據審查非常理想。

了解更多關於超級篩選工具的信息。

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,這是美國地區設置中的默認值。如果您的地區定義星期一為一周的開始,請調整邏輯。
  • To highlight 週末而不是篩選,請使用條件格式與以下公式:
    =OR(WEEKDAY(A2,1)=1,WEEKDAY(A2,1)=7) (假設您的日期在A列中)。
  • 此宏僅在視覺上隱藏行。數據未被刪除,並且可以通過移除篩選或運行ws.Rows.Hidden = False取消隱藏。

故障排除:

  • 如果宏無法運行,請確保在Excel的信任中心中啟用了宏。
  • 確保所選範圍包含有效的日期值。文本格式或空白單元格可能會被誤解並隱藏。
  • 如果運行後沒有任何反應,請檢查範圍是否正確選擇以及列數是否正好為一。

使用進階篩選與自訂條件篩選工作日和週末

Excel的進階篩選功能讓您可以在原地篩選數據或將結果複製到其他位置,使用自訂條件,而無需輔助列或插件。通過利用基於WEEKDAY函數的自訂公式作為條件範圍,您可以靈活地僅顯示工作日、僅顯示週末,甚至特定的日子。此方法適用於臨時一次性篩選,並避免在工作表中增加額外列。

以下是使用進階篩選篩選工作日/週末的步驟:

  • 步驟1:確保您的數據有標題。例如,假設您的日期在B列(標題:日期)。
  • 步驟2: 在表格的其他地方設置條件範圍。在條件範圍標題單元格中(例如, D1),輸入與日期列相同的標題("日期")。在其下方的單元格中(例如, D2),輸入以下公式以篩選週末:
    =OR(WEEKDAY(B2)=1, WEEKDAY(B2)=7)
  • 步驟3:選擇您的原始數據。轉到數據 > 進階在排序和篩選組中。
  • 步驟4: 在進階篩選對話框中,設置:
    • 列表範圍:您的原始數據,包括標題
    • 條件範圍:您的條件塊(標題和公式單元格)
    • 選擇是否在原地篩選列表或複製到另一個位置
  • 步驟5:點擊確定。只有週末日期將被顯示(或複製,如果選擇了該選項)。

要篩選工作日:

在"日期"標題下的條件單元格中使用以下公式:

=AND(WEEKDAY(B2)>1, WEEKDAY(B2)<7)

實用提示:

  • 條件單元格中的公式應引用日期列中的第一個數據單元格(例如,B2)。
  • 避免將公式輸入為數組;只需將其作為普通公式輸入即可。
  • 進階篩選最適合臨時視圖或過濾導出,當您不想添加輔助列時。

限制:

  • 如果新增了新數據,您必須重新應用進階篩選。
  • 條件範圍中的標題必須完全匹配數據集中列名。

常見錯誤和故障排除:

  • 確保公式引用正確的單元格(例如,如果B是日期列,則為B2)。
  • 如果沒有返回數據,請在樣本行上手動測試公式以確認邏輯。

示例:在Excel中篩選工作日和週末

 
Kutools for Excel:超過 300 種實用工具任您使用!永久免費享受AI功能!立即下載!

最佳 Office 生產力工具

🤖 Kutools AI 助手:以智能執行為基礎,革新數據分析 生成程式碼 創建自訂公式 分析數據並生成圖表 調用 Kutools 增強函數
熱門功能查找、選取項目的背景色或標記重複值刪除空行合併列或單元格且不遺失數據四捨五入(免公式)...
高級 LOOKUP多條件 VLookup多值 VLookup多表查找模糊查找...
高級下拉列表快速創建下拉列表 依賴型下拉列表 多選下拉列表...
列管理器添加指定數量的列移動列切換隱藏列的顯示狀態比較區域及列...
精選功能網格聚焦 設計檢視 增強編輯欄 工作簿及工作表管理器 資源庫(快捷文本) 日期提取器 合併資料 加密/解密儲存格 按列表發送電子郵件 超級篩選 特殊篩選(篩選粗體/傾斜/刪除線...)...
15 大工具集12 項文本工具添加文本刪除特定字符…)50+ 儀表 類型甘特圖等)40+ 實用 公式基於生日計算年齡等)19 項插入工具插入QR码根據路徑插入圖片等)12 項轉換工具金額轉大寫匯率轉換等)7 項合併與分割工具高級合併行分割儲存格等)...及更多
使用 Kutools,語言任你選 — 支援英語、西班牙語、德語、法語、中文及超過40 種語言!

運用 Kutools for Excel,全面提升您的 Excel 技能,體驗前所未有的高效。 Kutools for Excel 提供超過300 項進階功能,讓您提升工作效率、節省時間。 點此尋找您最需要的功能...


Office Tab 為 Office 帶來分頁介面,讓您的工作更加輕鬆簡單

  • 在 Word、Excel、PowerPoint 中啟用分頁編輯與閱讀
  • 在同一視窗的新分頁中打開與創建多份文件,而非開啟新視窗。
  • 提升您的生產力50%,每日可幫您減少數百次鼠標點擊!

所有 Kutools 外掛,一次安裝

Kutools for Office 套裝整合了 Excel、Word、Outlook 和 PowerPoint 的外掛,外加 Office Tab Pro,非常適合需要跨 Office 應用程式協同作業的團隊。

Excel Word Outlook Tabs PowerPoint
  • 全合一套裝 — Excel、Word、Outlook及 PowerPoint 外掛 + Office Tab Pro
  • 一鍵安裝,一份授權 — 幾分鐘完成設置(支援 MSI)
  • 協同運作更順暢 — Office 應用間無縫提升生產力
  • 30 天全功能試用 — 無需註冊、無需信用卡
  • 最超值 — 一次購買,節省單獨外掛費用