Przejdź do głównej zawartości

Jak filtrować dane, klikając zawartość komórki w programie Excel?

Zwykle w programie Excel można zastosować funkcję Filtruj, aby filtrować dane według potrzeb. Ale w tym artykule omówię, jak filtrować dane, klikając wartość komórki. Weźmy następujące dane jako przykład, kiedy dwukrotnie kliknę komórkę A2, wszystkie odpowiednie rekordy oparte na tej klikniętej wartości zostaną odfiltrowane od razu, jak pokazano poniżej.

doc filtruj po kliknięciu 1

Filtruj dane, klikając wartość komórki z kodem VBA


strzałka niebieski prawy bąbelek Filtruj dane, klikając wartość komórki z kodem VBA

Tutaj podam kod VBA, aby filtrować dane, klikając komórkę, wykonaj następujące czynności:

1. Najpierw nadaj swoim danym nazwę zakresu, wprowadź nazwę zakresu do Nazwa Boxi naciśnij Wchodzę klucz, patrz zrzut ekranu:

doc filtruj po kliknięciu 2

2. Kliknij prawym przyciskiem myszy kartę arkusza, który chcesz filtrować, klikając komórkę, a następnie wybierz Wyświetl kod z menu kontekstowego oraz w otwartym Microsoft Visual Basic for Applications w oknie, skopiuj i wklej następujący kod do pustego modułu:

Kod VBA: filtruj dane, klikając wartość komórki:

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 filtruj po kliknięciu 3

Note: W powyższym kodzie, moje dane to nazwa zakresu utworzona przez Ciebie dla zakresu danych, zmień ją według swoich potrzeb.

3. Następnie zapisz i zamknij okno kodu, teraz po dwukrotnym kliknięciu dowolnej komórki zakresu danych, który chcesz odfiltrować, odpowiednie rekordy zostaną przefiltrowane, jak pokazano na poniższym zrzucie ekranu:

doc filtruj po kliknięciu 4


Więcej powiązanych artykułów:

Jak zmienić wartość komórki, klikając komórkę?

Jak sortować dane kolumn, klikając nagłówek w programie Excel?

Najlepsze narzędzia biurowe

🤖 Pomocnik AI Kutools: Zrewolucjonizuj analizę danych w oparciu o: Inteligentne wykonanie   |  Wygeneruj kod  |  Twórz niestandardowe formuły  |  Analizuj dane i generuj wykresy  |  Wywołaj funkcje Kutools...
Popularne funkcje: Znajdź, wyróżnij lub zidentyfikuj duplikaty   |  Usuń puste wiersze   |  Łącz kolumny lub komórki bez utraty danych   |   Okrągły bez wzoru ...
Super wyszukiwanie: Wiele kryteriów VLookup    Wiele wartości VLookup  |   Przeglądanie pionowe na wielu arkuszach   |   Wyszukiwanie rozmyte ....
Zaawansowana lista rozwijana: Szybko twórz listę rozwijaną   |  Zależna lista rozwijana   |  Lista rozwijana wielokrotnego wyboru ....
Menedżer kolumn: Dodaj określoną liczbę kolumn  |  Przesuń kolumny  |  Przełącz stan widoczności ukrytych kolumn  |  Porównaj zakresy i kolumny ...
Polecane funkcje: Fokus siatki   |  Widok projektu   |   Duży pasek formuły    Menedżer skoroszytów i arkuszy   |  Biblioteka zasobów (Automatyczny tekst)   |  Selektor dat   |  Połącz arkusze   |  Szyfruj/odszyfruj komórki    Wysyłaj e-maile według listy   |  Super filtr   |   Specjalny filtr (filtruj pogrubienie/kursywa/przekreślenie...) ...
15 najlepszych zestawów narzędzi12 Tekst Tools (Dodaj tekst, Usuń znaki, ...)   |   50 + Wykres rodzaje (Wykres Gantta, ...)   |   40+ Praktyczne Wzory (Oblicz wiek na podstawie urodzin, ...)   |   19 Wprowadzenie Tools (Wstaw kod QR, Wstaw obraz ze ścieżki, ...)   |   12 Konwersja Tools (Liczby na słowa, Przeliczanie walut, ...)   |   7 Połącz i podziel Tools (Zaawansowane wiersze łączenia, Podział komórki, ...)   |   ... i więcej

Zwiększ swoje umiejętności Excela dzięki Kutools for Excel i doświadcz wydajności jak nigdy dotąd. Kutools dla programu Excel oferuje ponad 300 zaawansowanych funkcji zwiększających produktywność i oszczędzających czas.  Kliknij tutaj, aby uzyskać funkcję, której najbardziej potrzebujesz...

Opis


Karta Office wprowadza interfejs z zakładkami do pakietu Office i znacznie ułatwia pracę

  • Włącz edycję i czytanie na kartach w programach Word, Excel, PowerPoint, Publisher, Access, Visio i Project.
  • Otwieraj i twórz wiele dokumentów w nowych kartach tego samego okna, a nie w nowych oknach.
  • Zwiększa produktywność o 50% i redukuje setki kliknięć myszką każdego dnia!
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