Przejdź do głównej zawartości

Jak automatycznie ukrywać kolumny na podstawie daty w programie Excel?

Przypuśćmy, że mam zakres danych w arkuszu, teraz chcę automatycznie ukryć kolumny na podstawie określonej daty. Na przykład, kiedy wprowadzam datę 5-16-2016 w komórce, chcę natychmiast ukryć kolumny, których data jest mniejsza niż ta konkretna data, jak pokazano na zrzucie ekranu. Ten artykuł przedstawi kilka sztuczek, aby go rozwiązać.

doc ukryj kolumny według daty 1

Automatycznie ukrywaj kolumny na podstawie określonej daty za pomocą kodu VBA

Ukryj kolumny na podstawie określonej daty za pomocą Kutools for Excel


strzałka niebieski prawy bąbelek Automatycznie ukrywaj kolumny na podstawie określonej daty za pomocą kodu VBA

Aby wykonać to zadanie, następujący kod VBA może ci pomóc, wykonaj następujące czynności:

1. Wybierz kartę arkusza, którą chcesz ukryć według daty, i kliknij prawym przyciskiem myszy, aby wybrać Wyświetl kod z menu kontekstowego, aby przejść do pliku Microsoft Visual Basic for Applications okno, a następnie skopiuj i wklej następujący kod do modułu:

Kod VBA: automatycznie ukrywaj kolumny na podstawie określonej daty:

Private Sub Worksheet_Change(ByVal Target As Range)
'Updateby Extendoffice
    Dim xCell As Range
    If Target.Address <> Range("K4").Address Then Exit Sub
    Application.ScreenUpdating = False
    For Each xCell In Range("A1:I1")
        xCell.EntireColumn.Hidden = (xCell.Value < Target.Value)
    Next
    Application.ScreenUpdating = True
End Sub

doc ukryj kolumny według daty 2

2. Następnie zapisz i zamknij ten kod, wróć do arkusza roboczego, a teraz, kiedy wprowadzisz datę do komórki K4, kolumny, których data jest wcześniejsza niż ta konkretna data, zostaną automatycznie ukryte.

Note: W powyższym kodzie, K4 to konkretna komórka z datą, na podstawie której chcesz ukryć kolumny, A1: I1 to komórki wiersza zawierające użytą datę.


strzałka niebieski prawy bąbelek Ukryj kolumny na podstawie określonej daty za pomocą Kutools for Excel

Jeśli nie znasz kodu, oto przydatne narzędzie-Kutools dla programu Excel, Z siedzibą w Wybierz określone komórki narzędzie, możesz z łatwością zakończyć tę pracę.

Kutools dla programu Excel : z ponad 300 poręcznymi dodatkami Excela, które można wypróbować bez ograniczeń w ciągu 30 dni. 

Po zainstalowaniu Kutools dla programu Excelwykonaj następujące czynności:

1. Wybierz nagłówki dat i kliknij Kutools > Wybierz > Wybierz określone komórkizobacz zrzut ekranu:

2. W wyskoczył Wybierz określone komórki okno dialogowe, wybierz Cała kolumna z Typ wyboru, a następnie wybierz kryteria, takie jak Mniej niż z Określony typ rozwijana lista i wprowadź datę w obok pola tekstowego, na podstawie którego chcesz ukryć kolumny, patrz zrzut ekranu:

doc ukryj kolumny według daty 4

3. A następnie kliknij Ok przycisk, konkretne kolumny z datą mniejszą niż 5 są wybierane od razu, patrz zrzut ekranu:

doc ukryj kolumny według daty 5

4. Następnie kliknij prawym przyciskiem dowolny wybrany nagłówek kolumny i wybierz Ukryj aby ukryć wybrane kolumny według potrzeb. Zobacz zrzut ekranu:

doc ukryj kolumny według daty 6

Kliknij Bezpłatne pobieranie Kutools dla programu Excel teraz!

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 (2)
No ratings yet. Be the first to rate!
This comment was minimized by the moderator on the site
I have the same issue as Chris. The cell with my date does not always change. I need the macro to run regardless of whether the date has changed from last month or is the same as last month without having to click on the cell itself and hit enter to trigger the "Change"
This comment was minimized by the moderator on the site
Hello,
Thanks for the code.
In my case the cell K4 is a calculation cell from the formula =EOMONTH(A1,0). Example: A1 = 01.03.2017. K4 takes the value 31.03.2017. But the VBA code that you propose does not hide the columns until I click on K4 cell and press Enter to refresh it. I tried to add Range("K4").calculate but with no effect. Help please.
There are no comments posted here yet
Please leave your comments in English
Posting as Guest
×
Rate this post:
0   Characters
Suggested Locations