跳到主要內容

如何僅通過單擊Excel中的單元格內容來過濾數據?

通常,在Excel中,您可以根據需要應用過濾器功能來過濾數據。 但是,在本文中,我將討論如何僅通過單擊單元格值來過濾數據。 以下面的數據為例,當我雙擊單元格 A2 時,基於該單擊值的所有對應記錄將立即被過濾,如下圖所示。

點擊 1 即可過濾文檔

只需使用 VBA 代碼單擊單元格值即可過濾數據


箭頭藍色右氣泡 只需使用 VBA 代碼單擊單元格值即可過濾數據

在這裡,我將提供一個VBA代碼,供您通過單擊單元格來過濾數據,請執行以下操作:

1。 首先,為您的數據指定一個範圍名稱,請將範圍名稱輸入到 名稱框,然後按 Enter 鍵,請參見屏幕截圖:

點擊 2 即可過濾文檔

2。 右鍵單擊要通過單擊單元格進行過濾的工作表選項卡,然後選擇 查看代碼 從上下文菜單中,然後在打開的 Microsoft Visual Basic for Applications 窗口,將以下代碼複製並粘貼到空白模塊中:

VBA代碼:通過單擊單元格值過濾數據:

Option Explicit
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
'Updateby Extendoffice
    Dim rgTable As Range
    Dim rgData As Range
    Dim xColumn As Integer
    On Error Resume Next
    Application.ScreenUpdating = False
    Set rgTable = Range("mydata")
    With rgTable
        Set rgData = .Offset(1, 0).Resize(.Rows.Count - 1, .Columns.Count)
        If Not Application.Intersect(ActiveCell, rgData.Cells) Is Nothing Then
            xColumn = ActiveCell.Column - .Column + 1
            If ActiveSheet.AutoFilterMode = False Then
                .AutoFilter
            End If
            If ActiveSheet.AutoFilter.Filters(xColumn).On = True Then
                .AutoFilter Field:=xColumn
            Else
                .AutoFilter Field:=xColumn, Criteria1:=ActiveCell.Value
            End If
        End If
    End With
    Set rgData = Nothing
    Set rgTable = Nothing
    Application.ScreenUpdating = True
End Sub

點擊 3 即可過濾文檔

備註:在上面的代碼中, 我的數據 是您為數據范圍創建的範圍名稱,請根據您的需要更改它。

3。 然後保存並關閉代碼窗口,現在,當您雙擊要過濾的數據范圍中的任何單元格時,將過濾其相應的記錄,如下圖所示:

點擊 4 即可過濾文檔


更多相關文章:

如何通過單擊單元格來更改單元格值?

如何通過單擊Excel中的標題對列數據進行排序?

最佳辦公生產力工具

熱門特色: 尋找、突出顯示或識別重複項   |  刪除空白行   |  合併列或儲存格而不遺失數據   |   沒有公式的回合 ...
超級查詢: 多條件VLookup    多值VLookup  |   跨多個工作表的 VLookup   |   模糊查詢 ....
高級下拉列表: 快速建立下拉列表   |  依賴下拉列表   |  多選下拉列表 ....
欄目經理: 新增特定數量的列  |  移動列  |  切換隱藏列的可見性狀態  |  比較範圍和列 ...
特色功能: 網格焦點   |  設計圖   |   大方程式酒吧    工作簿和工作表管理器   |  資源庫 (自動文字)   |  日期選擇器   |  合併工作表   |  加密/解密單元格    按清單發送電子郵件   |  超級濾鏡   |   特殊過濾器 (過濾粗體/斜體/刪除線...)...
前 15 個工具集12 文本 工具 (添加文本, 刪除字符,...)   |   50+ 圖表 類型 (甘特圖,...)   |   40+ 實用 公式 (根據生日計算年齡,...)   |   19 插入 工具 (插入二維碼, 從路徑插入圖片,...)   |   12 轉化 工具 (數字到單詞, 貨幣兌換,...)   |   7 合併與拆分 工具 (高級合併行, 分裂細胞,...)   |   ... 和更多

使用 Kutools for Excel 增強您的 Excel 技能,體驗前所未有的效率。 Kutools for Excel 提供了 300 多種進階功能來提高生產力並節省時間。  點擊此處獲取您最需要的功能...

kte選項卡201905


Office選項卡為Office帶來了選項卡式界面,使您的工作更加輕鬆

  • 在Word,Excel,PowerPoint中啟用選項卡式編輯和閱讀,發布者,Access,Visio和Project。
  • 在同一窗口的新選項卡中而不是在新窗口中打開並創建多個文檔。
  • 將您的工作效率提高 50%,每天為您減少數百次鼠標點擊!
Comments (3)
No ratings yet. Be the first to rate!
This comment was minimized by the moderator on the site
Hi, I have a summary sheet, that calculates how many lines on the main sheet that are within a certain date range. I want to be able to double click on a certain date range and it then filter out the data on the main sheet to the date range I double clicked on. What code would I need for this please
This comment was minimized by the moderator on the site
Buenas tardes

Excelente aportación ... lástima que no funcione con un archivo protegido ... qué podría cambiarle para que si funcione?

Saludos
This comment was minimized by the moderator on the site
Muito bom!
Entretanto, só funciona em um intervalo.
Eu queria aplicá-lo em uma Tabela, é possível? Ficaria muito agradecido se sim!!
There are no comments posted here yet
Please leave your comments in English
Posting as Guest
×
Rate this post:
0   Characters
Suggested Locations