Hoppa till huvudinnehåll

Hur gömmer jag kolumner automatiskt baserat på datum i Excel?

Antag att jag har en rad data i ett kalkylblad, nu vill jag automatiskt dölja kolumnerna baserat på ett visst datum. När jag till exempel anger datum 5/16/2016 i en cell vill jag dölja kolumnerna vilket datum är mindre än detta specifika datum omedelbart som följande skärmdump visas. Denna artikel kommer att introducera några knep för att lösa det.

doc göm kolumner efter datum 1

Dölj automatiskt kolumner baserat på ett visst datum med VBA-kod

Dölj kolumner baserat på ett visst datum med Kutools för Excel


pil blå höger bubbla Dölj automatiskt kolumner baserat på ett visst datum med VBA-kod

För att slutföra denna uppgift kan följande VBA-kod hjälpa dig, gör så här:

1. Välj arkfliken som du vill dölja efter datum och högerklicka för att välja Visa kod från snabbmenyn för att gå till Microsoft Visual Basic för applikationer och kopiera och klistra sedan in följande kod i modulen:

VBA-kod: Dölj kolumner automatiskt baserat på specifikt datum:

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 göm kolumner efter datum 2

2. Spara och stäng sedan den här koden, gå tillbaka till kalkylbladet och nu när du anger datumet i cellen K4, döljs kolumnerna med vilket datum som är mindre än det specifika datumet automatiskt.

Anmärkningar: I ovanstående kod, K4 är den specifika datumcellen som du vill dölja kolumnerna baserat på, A1: I1 är radcellerna det datum du använde.


pil blå höger bubbla Dölj kolumner baserat på ett visst datum med Kutools för Excel

Om du inte känner till koden, här är ett praktiskt verktyg-Kutools för Excel, med dess Välj specifika celler verktyg kan du enkelt avsluta det här jobbet.

Kutools för Excel : med mer än 300 praktiska Excel-tillägg, gratis att prova utan begränsning på 30 dagar. 

När du har installerat Kutools för Excel, gör så här:

1. Välj datumrubriker och klicka Kutools > Välja > Välj specifika celler, se skärmdump:

2. I poppade ut Välj specifika celler dialogrutan väljer du Hela kolumnen från Urvalstypoch välj sedan kriterierna, t.ex. Mindre än från Specifik typ rullgardinsmeny och ange datumet i bredvid textrutan som du vill dölja kolumner baserat på, se skärmdump:

doc göm kolumner efter datum 4

3. Och klicka sedan på Ok -knappen, de specifika kolumnerna med datum som är mindre än 5-16-2016 väljs samtidigt, se skärmdump:

doc göm kolumner efter datum 5

4. Högerklicka sedan på en vald kolumnrubrik och välj Dölja för att dölja dessa valda kolumner efter behov. Se skärmdump:

doc göm kolumner efter datum 6

Klicka på Gratis nedladdning Kutools för Excel nu!

Bästa kontorsproduktivitetsverktyg

🤖 Kutools AI Aide: Revolutionera dataanalys baserat på: Intelligent utförande   |  Generera kod  |  Skapa anpassade formler  |  Analysera data och generera diagram  |  Anropa Kutools funktioner.
Populära funktioner: Hitta, markera eller identifiera dubbletter   |  Ta bort tomma rader   |  Kombinera kolumner eller celler utan att förlora data   |   Rund utan formel ...
Superuppslag: Flera kriterier VLookup    VLookup med flera värden  |   VSök över flera ark   |   Fuzzy Lookup ....
Avancerad rullgardinslista: Skapa snabbt en rullgardinslista   |  Beroende rullgardinslista   |  Flervals-rullgardinslista ....
Kolumnhanterare: Lägg till ett specifikt antal kolumner  |  Flytta kolumner  |  Växla synlighetsstatus för dolda kolumner  |  Jämför intervall och kolumner ...
Utvalda funktioner: Rutnätsfokus   |  Designvy   |   Stor formelbar    Arbetsbok & Bladhanterare   |  Resursbibliotek (Automatisk text)   |  Datumväljare   |  Kombinera arbetsblad   |  Kryptera/Dekryptera celler    Skicka e-postmeddelanden efter lista   |  Superfilter   |   Specialfilter (filtrera fet/kursiv/genomstruken...) ...
Topp 15 verktygssatser12 text verktyg (lägga till text, Ta bort tecken, ...)   |   50+ Diagram Typer (Gantt Chart, ...)   |   40+ Praktiskt Formler (Beräkna ålder baserat på födelsedag, ...)   |   19 Införande verktyg (Infoga QR-kod, Infoga bild från sökväg, ...)   |   12 Konvertering verktyg (Siffror till ord, Valutaväxling, ...)   |   7 Slå ihop och dela verktyg (Avancerade kombinera rader, Dela celler, ...)   |   ... och mer

Uppgradera dina Excel-färdigheter med Kutools för Excel och upplev effektivitet som aldrig förr. Kutools för Excel erbjuder över 300 avancerade funktioner för att öka produktiviteten och spara tid.  Klicka här för att få den funktion du behöver mest...

Beskrivning


Fliken Office ger ett flikgränssnitt till Office och gör ditt arbete mycket enklare

  • Aktivera flikredigering och läsning i Word, Excel, PowerPoint, Publisher, Access, Visio och Project.
  • Öppna och skapa flera dokument i nya flikar i samma fönster, snarare än i nya fönster.
  • Ökar din produktivitet med 50 % och minskar hundratals musklick för dig varje dag!
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