Прескочи на основното съдържание

Как да филтрирате данни само като щракнете върху съдържанието на клетка в Excel?

Автор: Xiaoyang Последна промяна: 2020-07-24

Обикновено в Excel можете да приложите функцията Филтър, за да филтрирате данни според вашите нужди. Но в тази статия ще говоря за това как да филтрирате данни само като щракнете върху стойност на клетка. Вземете следните данни като пример, когато щракна два пъти върху клетка A2, всички съответни записи въз основа на тази щракната стойност ще бъдат филтрирани наведнъж, както е показано на екранната снимка по-долу.

doc филтър чрез щракване 1

Филтрирайте данните само като щракнете върху стойност на клетка с VBA код


стрелка син десен балон Филтрирайте данните само като щракнете върху стойност на клетка с VBA код

Тук ще ви предоставя VBA код, за да филтрирате данни, като щракнете върху клетка, моля, направете следното:

1. Първо, дайте на данните си име на диапазон, моля, въведете име на диапазон в Име Box, и натиснете Въведете ключ, вижте екранната снимка:

doc филтър чрез щракване 2

2. Щракнете с десния бутон върху раздела на листа, който искате да филтрирате, като щракнете върху клетка и след това изберете Преглед на кода от контекстното меню и в отвореното Microsoft Visual Basic за приложения прозорец, копирайте и поставете следния код в празния модул:

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

doc филтър чрез щракване 3

Забележка: В горния код, моите данни е името на диапазона, който сте създали за вашия диапазон от данни, моля, променете го според вашите нужди.

3. След това запазете и затворете прозореца на кода, сега, когато щракнете двукратно върху която и да е клетка от диапазона от данни, който искате да филтрирате, съответните му записи ще бъдат филтрирани, както е показано на следната екранна снимка:

doc филтър чрез щракване 4


Още свързани статии:

Как да промените стойността на клетката, като щракнете върху клетката?

Как да сортирате данни от колони, като щракнете върху заглавката в Excel?

Най-добрите инструменти за продуктивност в офиса

🤖 Kutools AI помощник: Революционизирайте анализа на данни въз основа на: Интелигентно изпълнение   |  Генериране на код  |  Създаване на персонализирани формули  |  Анализирайте данни и генерирайте диаграми  |  Извикване на функциите на Kutools...
Популярни функции: Намерете, маркирайте или идентифицирайте дубликати   |  Изтриване на празни редове   |  Комбинирайте колони или клетки без загуба на данни   |   Кръг без формула ...
Супер търсене: VLookup с множество критерии    VLookup с множество стойности  |   VLookup в няколко листа   |   Размито търсене ....
Разширен падащ списък: Бързо създаване на падащ списък   |  Зависим падащ списък   |  Падащ списък с множество избори ....
Мениджър на колони: Добавете конкретен брой колони  |  Преместване на колони  |  Превключване на състоянието на видимост на скритите колони  |  Сравнете диапазони и колони ...
Препоръчани функции: Мрежов фокус   |  Изглед на дизайна   |   Голям формула бар    Мениджър на работни книги и листове   |  Библиотека с ресурси (Автоматичен текст)   |  Избор на дата   |  Комбинирайте работни листове   |  Шифроване/декриптиране на клетки    Изпращайте имейли по списък   |  Супер филтър   |   Специален филтър (филтър получер/курсив/зачертано...) ...
Топ 15 комплекта инструменти12 Текст Инструменти (добавяне на текст, Премахване на символи, ...)   |   50 + Графика Видове (диаграма на Гант, ...)   |   40+ Практичен формули (Изчислете възрастта въз основа на рождения ден, ...)   |   19 вмъкване Инструменти (Въведете QR код, Вмъкване на картина от пътя, ...)   |   12 Конверсия Инструменти (Числа към думи, Валутен обмен, ...)   |   7 Обединяване и разделяне Инструменти (Разширено комбиниране на редове, Разделени клетки, ...)   |   ... и още

Усъвършенствайте уменията си за Excel с Kutools за Excel и изпитайте ефективност, както никога досега. Kutools за Excel предлага над 300 разширени функции за повишаване на производителността и спестяване на време.  Щракнете тук, за да получите функцията, от която се нуждаете най-много...

Описание


Раздел Office Внася интерфейс с раздели в Office и прави работата ви много по-лесна

  • Разрешете редактиране и четене с раздели в Word, Excel, PowerPoint, Publisher, 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