Note: The other languages of the website are Google-translated. Back to English

Hur kontrollerar jag om ett datum är allmän helgdag och räknar dagar utom helgdagar i Excel?

Du har till exempel en lista med datum och vill kontrollera om det finns helgdagar i listan, hur kan du få det gjort snabbt? I den här artikeln visar jag hur du kan beräkna alla datum för amerikanska helgdagar inom givna år och sedan kontrollera om ett datum är en amerikansk helgdag i Excel enkelt.


Del 1: Beräkna helgdagar med angivet år i Excel

Innan du kontrollerar om ett datum är en allmän helgdag måste du lista alla helgdagar inom givna år i Excel. Därför förbereder du ett bord enligt följande skärmdump kommer att göra ditt arbete enklare.

dok. kontrollera om allmän helgdag 1

Det finns tre typer av amerikanska helgdagar:

(1) Den första typen är en allmän helgdag på ett fast datum, till exempel nyårsdagen är den 1 januari. vi kan enkelt beräkna nyårsdagen med formeln = DATUM (givet år, 1,1);

(2) Den andra typen är en allmän helgdag på en fast vardag, såsom presidentens dag. Vi kan enkelt beräkna presidentdagen med formeln = DATUM (given år, 1,1) + 14 + VÄLJ (VECKODAG (DATUM (given år, 1,1)), 1,0,6,5,4,3,2);

(3) Och den sista typen är Memorial Day, vi kan enkelt beräkna Memorial Day med formeln = DATUM (given år, 6,1) -WEEKDAY (DATE (given år, 6,6)).

Här listar jag formler för att beräkna alla helgdagar i följande tabell. Ange bara formlerna i rätt cell och tryck på ange nyckel en efter en.

Semester Cell Formler
Nyårsdagen C2 = DATUM (C1,1,1)
Martin Luther King Jr. Day C3 = DATUM (C1,1,1) + 14 + VÄLJ (VECKODAG (DATUM (C1,1,1)), 1,0,6,5,4,3,2)
Presidentens dag C4 = DATUM (C1,2,1) + 14 + VÄLJ (VECKODAG (DATUM (C1,2,1)), 1,0,6,5,4,3,2)
MINNESDAGEN C5 = DATUM (C1,6,1) -VECKODAG (DATUM (C1,6,6))
SJÄLVSTÄNDIGHETSDAGEN C6 = DATUM (C1,7,4)
Labor Day C7 = DATUM (C1,9,1) + VÄLJ (VECKODAG (DATUM (C1,9,1)), 1,0,6,5,4,3,2)
Columbus Day C8 = DATUM (C1,10,1) + 7 + VÄLJ (VECKODAG (DATUM (C1,10,1)), 1,0,6,5,4,3,2)
Veterans Day C9 = DATUM (C1,11,11)
Thanksgiving Day C10 = DATUM (C1,11,1) + 21 + VÄLJ (VECKODAG (DATUM (C1,11,1)), 4,3,2,1,0,6,5)
JULDAGEN C11 = DATUM (C1,12,25)

Notera: I formlerna i ovanstående tabell är C1 referenscellen som lokaliserar det angivna året. I vårt exempel betyder det år 2015, och du kan ändra det baserat på dina behov.

Med dessa formler kan du enkelt beräkna datum för helgdagar med givna år. Se skärmdump nedan:

dok. kontrollera om allmän helgdag 2

Spara ett intervall som AutoText-post (återstående cellformat och formler) för återanvändning i framtiden

Det måste vara mycket tråkigt att hänvisa celler och tillämpa formler för att beräkna varje helgdag. Kutools för Excel ger en söt lösning på Automatisk text verktyg för att spara intervallet som en AutoText-post, som kan förbli cellformaten och formlerna i intervallet. Och sedan kommer du att återanvända detta intervall med bara ett klick. Arbetet blir enkelt genom att bara klicka för att infoga den här tabellen och ändra året i denna tabell!


ad auto amerikanska helgdagar 1

Kutools för Excel - Innehåller mer än 300 praktiska verktyg för Excel. Fullständig gratis provperiod 30-dag, inget kreditkort krävs! Hämta den nu

Del 2: Kontrollera om ett datum är helgdag i Excel

Efter att ha listat alla datum för helgdagar för specifika år kan vi enkelt kontrollera om ett datum är helgdag eller inte med formler i Excel. Antag att du har en datumlista som följande skärmdump visas, och jag kommer att presentera sätten att få det gjort enkelt.

Välj en tom cell förutom datumlistan, säger Cell B18, ange formeln = IF (COUNTIF ($ C $ 2: $ D $ 11, A18), "Holiday", "No") in den och dra sedan Fill Handle till det intervall du behöver. Se skärmdump ovan:

Anmärkningar:

(1) I formeln = IF (COUNTIF ($ C $ 2: $ D $ 11, A18), "Holiday", "No") är $ C $ 2: $ D $ 11 utbudet av allmänna helgdagar under specifika år, och A18 är cellen med datum som du vill kontrollera om det är en helgdag och du kan ändra dem baserat på dina behov. Och den här formeln returnerar "Semester" om det specifika datumet är en allmän helgdag och returnerar "Nej" om det inte är det.

(2) Du kan också använda denna matrisformel = OM (ELLER ($ C $ 2: $ D $ 11 = A18), "Holiday", "NO") för att kontrollera om motsvarande datum är semester eller inte.


Del 3: Räkna dagar mellan två dagar utom helger och helgdagar i Excel

I del 1 har vi listat alla helgdagar under ett visst år, och nu kommer den här metoden att vägleda dig att räkna antalet dagar utom alla helger och helgdagar i ett datumintervall.

Välj en tom cell som du returnerar antalet dagar och ange formeln = NÄTVERKSDAGAR (E1, E2, B2: B10) in i den och tryck på ange nyckel.

Anmärkningar: I ovanstående celler är E1 startdatumet för det angivna datumintervallet, E2 är slutdatumet, och B2: B10 är den semesterlista vi beräknar i del 1.

dok. kontrollera om allmän helgdag 6

Nu får du antalet dagar utom helger och helgdagar i det angivna datumintervallet.

Kopiera formler exakt / statiskt utan att ändra cellreferenser i Excel

Kutools för Excel Exakt kopia verktyget kan hjälpa dig att enkelt kopiera flera formler exakt utan att ändra cellreferenser i Excel, vilket förhindrar att relativa cellreferenser uppdateras automatiskt.


annonsens exakta kopieringsformler 3

Kutools för Excel - Innehåller mer än 300 praktiska verktyg för Excel. Fullständig gratis provperiod 30-dag, inget kreditkort krävs! Hämta den nu


De bästa Office-produktivitetsverktygen

Kutools för Excel löser de flesta av dina problem och ökar din produktivitet med 80%

  • återanvändning: Sätt snabbt i komplexa formler, diagram och allt som du har använt tidigare; Kryptera celler med lösenord; Skapa e-postlista och skicka e-post ...
  • Super Formula Bar (enkelt redigera flera rader med text och formel); Läslayout (enkelt läsa och redigera ett stort antal celler); Klistra in i filtrerat intervall...
  • Sammanfoga celler / rader / kolumner utan att förlora data; Delat cellinnehåll; Kombinera duplicerade rader / kolumner... Förhindra duplicerade celler; Jämför intervall...
  • Välj Duplicera eller Unikt Rader; Välj tomma rader (alla celler är tomma); Super Find och Fuzzy Find i många arbetsböcker; Slumpmässigt val ...
  • Exakt kopia Flera celler utan att ändra formelreferens; Skapa referenser automatiskt till flera ark; Sätt in kulor, Kryssrutor och mer ...
  • Extrahera text, Lägg till text, ta bort efter position, Ta bort mellanslag; Skapa och skriva ut personsökningstalsatser; Konvertera mellan celler innehåll och kommentarer...
  • Superfilter (spara och tillämpa filterscheman på andra ark); Avancerad sortering efter månad / vecka / dag, frekvens och mer; Specialfilter av fet, kursiv ...
  • Kombinera arbetsböcker och arbetsblad; Sammanfoga tabeller baserat på nyckelkolumner; Dela data i flera ark; Batchkonvertera xls, xlsx och PDF...
  • Mer än 300 kraftfulla funktioner. Stöder Office / Excel 2007-2021 och 365. Stöder alla språk. Enkel implementering i ditt företag eller organisation. Fullständiga funktioner 30 dagars gratis provperiod. 60 dagars pengarna tillbaka-garanti.
kte-flik 201905

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!
officetab botten
Sortera kommentarer efter
Kommentarer (8)
Inga betyg än. Bli först med att betygsätta!
Denna kommentar minimerades av moderatoren på webbplatsen
försöker göra en formel för att subtrahera KALENDERDAGAR och helgdagar. Jag har kunnat räkna ut för ARBETSDAGAR och SEMESTER, men jag kan inte ta reda på hur man gör KALENDER-dagar och helgdagar. här är vad jag för tillfället använder för ARBETSDAGAR OCH SEMESTER. Hjälp! Så jag behöver detta vara KALENDER-dagar istället för WORKDAYS.] =ARBETSDAG(B28-5,1,SEmester)
Denna kommentar minimerades av moderatoren på webbplatsen
Hur kunde jag få detta att fungera för Federal Holiday? Det betyder att om datumet för en helgdag råkar infalla på en helg så skulle den federala helgdagen antingen vara fredag ​​eller måndag.
Denna kommentar minimerades av moderatoren på webbplatsen
Jag använde formlerna ovan för att beräkna den faktiska semesterdagen och gjorde en andra kolumn för Observerad helgdag. Jag skapade den här formeln för att åstadkomma detta: =OM((VARDAG(B15))=1,B15+1,OM((VARDAG(B15))=7,B15-1,B15)). Cellreferensen B15 hänvisar till den helgdag som finns i den faktiska högtidskolumnen, i detta fall nyårsdagen. När den faktiska helgdagen infaller på en lördag kommer den observerade helgdagen att anges som fredag ​​och för faktiska helgdagar som infaller på söndagen kommer den observerade helgdagen att anges som måndag. Hoppas det här hjälper.
Denna kommentar minimerades av moderatoren på webbplatsen
Detta är en korrekt funktion som kommer att fungera för nyårsdagen som skulle infalla på en helg (åren 2022 och 2023): =ARBETSDAG(DATUM(KalenderÅr,1,1),--(VECKODAG(DATUM(Kalenderår,1,1) ,2)>5))
Denna kommentar minimerades av moderatoren på webbplatsen
Tack, jag har utarbetat ett system för att avgöra om en helgdag är en vardag, men detta ger också ett alternativ. Problemet är att om man gör det per månad så finns det luckor mellan dagar där helgdagar inträffar under vardagar. Ett exempel som nedan tar del av december 2017. siffrorna till omedelbar rätt till datum (kol B) är WEEKDAY-värdena. Om datumet infaller på en lördag eller söndag (värde 6 eller 7) så återspeglar C-kolumnen en tom cell ("") om cellen har en "1" på en veckodag, om en allmän helgdag under en vardag då "0" 21 /12/2017 4 1 22/12/2017 5 1 23/12/2017 6 24/12/2017 7 25/12/2017 1 0 26/12/2017 2 0 27/12/2017 3/1 28 12 2017 4 1/29/12 2017 5 1/30/12 2017 6/31/12 2017 Jag kan sedan sortera manuellt med hjälp av filtermetoden för att få 7:orna i en kontinuerlig kolumn med rader utan blanksteg eller 1:or. Kopiera och klistra in i ett kalkylblad där jag kan importera data till temperaturdiagrammen. Jag försöker få filtersektionen automatiserad antingen via formeln genom att ta bort alla nollor och tomma celler med den resulterande förskjutningen uppåt av celler som innehåller ettorna, eller via VBA. Det ultimata priset skulle vara att kombinera stegen i kolumn A och kolumn C till en formel. Slutspelet är att fylla i ett temperaturdiagram med arbetsdagens namn och i nästa motsvarande rad dagen i den önskade månaden Mån Tis Tors Fre 0 0 1 7 Använda augusti som ett exempel där den 8 är en helgdag som infaller under ett arbete dag, vilket resulterar i att data relaterade till Wed tas bort och resten av kolumnen flyttas upp en (eller flera) platser. Transponeras sedan till ovanstående celler. Jag hoppas att jag förklarar tillräckligt tydligt :-)
Denna kommentar minimerades av moderatoren på webbplatsen
Hur får man det att visa det faktiska namnet på semestern istället för bara "semester"?
Denna kommentar minimerades av moderatoren på webbplatsen
Hej KC,
Du kan ändra texten "semester" till INDEX($A$1:$A$11,MATCH(A18,$C$1:$C$11,0)) i formeln, och hela formeln kommer att ändras till
=IF(COUNTIF($C$2:$C$11,A18),INDEX($A$1:$A$11,MATCH(A18,$C$1:$C$11,0)),"No")

Observera att datumen du kontrollerar ska placeras i en kolumn.
Denna kommentar minimerades av moderatoren på webbplatsen
Hur skulle du beräkna 15 kalenderdagar från ett givet datum inklusive helger men exklusive helgdagar med hjälp av en lista/tabell över semesterdatum?
Det finns inga kommentarer här ännu
Lämna dina kommentarer
Postar som gäst
×
Betygsätt detta inlägg:
0   Tecken
Föreslagna platser

Följ oss

Copyright © 2009 - www.extendoffice.com. | Alla rättigheter förbehållna. Drivs av ExtendOffice. | | Sitemap
Microsoft och Office-logotypen är varumärken eller registrerade varumärken som tillhör Microsoft Corporation i USA och / eller andra länder.
Skyddad av Sectigo SSL