Innholdsfortegnelse
Dagens blogginnlegg handler om å finne ut forskjellen mellom to datoer i Google Sheets. Du vil se mange DATEDIF-formler for å telle dager, måneder og år, og lære hvordan NETWORKDAYS brukes til å telle arbeidsdager bare selv om ferien din er basert på en egendefinert tidsplan.
Mange regneark brukere finner datoer forvirrende, om ikke ekstremt vanskelig, å håndtere. Men tro det eller ei, det er noen få nyttige og enkle funksjoner for det formålet. DATEDIF og NETWORKDAYS er et par av dem.
DATEDIF-funksjon i Google Sheets
Som det skjer med funksjoner, antyder navnene deres handlingen. Det samme gjelder DATEDIF. Den må leses som datodif , ikke datert if , og den står for datoforskjell . Derfor beregner DATEDIF i Google Sheets datoforskjellen mellom to datoer.
La oss dele den opp i biter. Funksjonen krever tre argumenter:
=DATEDIF(startdato, sluttdato, enhet)- startdato – en dato som brukes som utgangspunkt. Det må være ett av følgende:
- en selve datoen i doble anførselstegn: "8/13/2020"
- en referanse til en celle med en dato: A2
- en formel som returnerer en dato: DATE(2020, 8, 13)
- et tall som står for en bestemt dato og som kan tolkes som en dato av Google Sheets, f.eks. 44056 representerer 13. august 2020 .
- sluttdato – en dato bruktsom et endepunkt. Den må ha samme format som startdato .
- enhet – brukes til å fortelle funksjonen hvilken forskjell som skal returneres. Her er en fullstendig liste over enheter du kan bruke:
- "D" – (forkortelse for dager ) returnerer antall dager mellom to datoer.
- "M" – (måneder) antall hele måneder mellom to datoer.
- "Y" – (år) antall hele år.
- "MD" – (dager ignorerer måneder) antall dager etter å trekke hele måneder.
- "YD" – (dager ignorerer år) antall dager etter fratrekk av hele år.
- "YM" – (måneder ignorerer år) antall komplette måneder etter fratrekk av hele år.
Merk. Alle enheter må settes til formler på samme måte som de vises ovenfor – i doble anførselstegn.
La oss nå sette sammen alle disse delene og se hvordan DATEDIF-formler fungerer i Google Sheets.
Beregn dager mellom to datoer i Google Sheets
Eksempel 1. Tell alle dager
Jeg har et lite bord for å spore noen bestillinger. Alle har blitt sendt i første halvdel av august – Forsendelsesdato – som kommer til å være min startdato. Det er også en omtrentlig leveringsdato – Forfallsdato .
Jeg skal beregne dager – "D" – mellom frakt og forfallsdatoer for å se hvor lang tid det tar før varene kommer frem. Her er formelen jeg skal bruke:
=DATEDIF(B2, C2, "D")
Jeg skriver innDATEDIF-formel til D2, og kopier den deretter ned i kolonnen for å bruke den på andre rader.
Tips. Du kan alltid beregne hele kolonnen samtidig med en enkelt formel ved å bruke ARRAYFORMULA:
=ArrayFormula(DATEDIF(B2:B13, C2:C13, "D"))
Eksempel 2. Tell dager mens du ignorerer måneder
Tenk deg det er noen måneder mellom to datoer:
Hvordan teller du bare dager som om de tilhørte samme måned? Det stemmer: ved å ignorere hele måneder som har gått. DATEDIF beregner dette automatisk når du bruker "MD" -enheten:
=DATEDIF(A2, B2, "MD")
Funksjonen trekker fra forløpte måneder og teller gjenværende dager .
Eksempel 3. Tell dager mens du ignorerer år
En annen enhet – "YD" – vil hjelpe når datoer har mer enn ett år mellom seg:
=DATEDIF(A2, B2, "YD")
Formelen vil trekke fra år først, og deretter beregne gjenværende dager som om de tilhørte samme år.
Telle arbeidsdager i Google Sheets
Det er et spesielt tilfelle når du bare trenger å telle arbeidsdager i Google Sheets. DATEDIF-formler vil ikke være mye til hjelp her. Og jeg tror du vil være enig i at å trekke fra helger manuelt ikke er det mest elegante alternativet.
Heldigvis har Google Sheets et par ikke-så-magiske trollformler for det :)
Eksempel 1. NETTVERKDAGER-funksjon
Den første kalles NETTDAGER. Denne funksjonen beregner antall virkedager mellom to datoer unntatt helger (lørdag ogsøndag) og til og med helligdager om nødvendig:
=NETTVERKDAGER(startdato, sluttdato, [helligdager])- startdato – en dato som brukes som utgangspunkt. Obligatorisk.
Merk. Dersom denne datoen ikke er en helligdag, regnes den som en virkedag.
- sluttdato – en dato som brukes som endepunkt. Obligatorisk.
Merk. Dersom denne datoen ikke er en helligdag, regnes den som en virkedag.
- ferier – denne er valgfri når du trenger å peke ut spesifikke helligdager. Det må være et utvalg av datoer eller tall som representerer datoer.
For å illustrere hvordan det fungerer, vil jeg legge til en liste over helligdager som finner sted mellom forsendelse og forfallsdato:
Så, kolonne B er min startdato, kolonner C - sluttdato. Datoer i kolonne E er høytidene du bør vurdere. Slik skal formelen se ut:
=NETWORKDAYS(B2, C2, $E$2:$E$4)
Tips. Hvis du skal kopiere formelen til andre celler, bruk absolutte cellereferanser for helligdager for å unngå feil eller feil resultater. Eller vurder å bygge en matriseformel i stedet.
Har du lagt merke til hvordan antall dager gikk ned sammenlignet med DATEDIF-formlene? For nå trekker funksjonen automatisk fra alle lørdager, søndager og to helligdager som finner sted på fredag og mandag.
Merk. I motsetning til DATEDIF i Google Regneark, teller NETWORKDAYS startdag og sluttdag som arbeidsdager med mindre de er helligdager. Derfor returnerer D7 1 .
Eksempel 2.NETWORKDAYS.INTL for Google Sheets
Hvis du har en egendefinert helgeplan, vil du dra nytte av en annen funksjon: NETWORKDAYS.INTL. Den lar deg telle arbeidsdager i Google Regneark basert på personlig angitte helger:
=NETTVERKDAGER.INTL(startdato, sluttdato, [helg], [helligdager])- startdato – en dato brukt som utgangspunkt. Obligatorisk.
- sluttdato – en dato som brukes som endepunkt. Obligatorisk.
Merk. NETWORKDAYS.INTL i Google Sheets teller også start_day og end_day som arbeidsdager med mindre de er helligdager.
- helg – denne er valgfri. Hvis utelatt, regnes lørdag og søndag som helger. Men du kan endre det på to måter:
- Masker .
Tips. Denne måten er perfekt når fridagene dine er spredt over hele uken.
Mask er et syvsifret mønster av 1-er og 0-er. 1 står for en helg, 0 for en arbeidsdag. Det første sifferet i mønsteret er alltid mandag, det siste - søndag.
For eksempel betyr "1100110" at du jobber onsdag, torsdag, fredag og lørdag.
Merk. Masken må settes i doble anførselstegn.
- Tall .
Bruk ettsifrede tall (1-7) som angir et par faste helger:
Nummer Helg 1 Lørdag, søndag 2 Søndag, mandag 3 Mandag, tirsdag 4 Tirsdag,Onsdag 5 Onsdag, torsdag 6 Torsdag, fredag 7 Fredag, lørdag Eller arbeid med tosifrede tall (11-17) som angir en hviledag innen en uke:
Nummer Helgedag 11 Søndag 12 Mandag 13 Tirsdag 14 Onsdag 15 Torsdag 16 Fredag 17 Lørdag
- Masker .
- helligdager – den er også valgfri og brukes til å spesifisere helligdager.
Denne funksjonen kan virke komplisert på grunn av alle disse tallene, men jeg oppfordrer deg til å prøve.
Først, bare få en klar forståelse av fridagene dine. La oss klare det søndag og mandag . Bestem deretter veien for å angi helgene dine.
Hvis du går med en maske, vil det være slik – 1000001 :
=NETWORKDAYS.INTL(B2, C2, "1000001")
Men siden jeg har to helgedager på rad, kan jeg bruke et tall fra tabellene ovenfor, 2 i mitt tilfelle:
=NETWORKDAYS.INTL(B2, C2, 2)
Deretter legger jeg bare til siste argument – referer til helligdager i kolonne E, og formelen er klar:
=NETWORKDAYS.INTL(B2, C2, 2, $E$2:$E$4)
Google Sheets og datoforskjell i måneder
Noen ganger betyr måneder mer enn dager. Hvis dette er sant for deg og du foretrekker å få datoforskjellen i måneder i stedet for dager, la Google SheetsDATEDIF gjør jobben.
Eksempel 1. Antall hele måneder mellom to datoer
Drillen er den samme: startdatoen går først, etterfulgt av end_date og "M" – som står for måneder – som et siste argument:
=DATEDIF(A2, B2, "M")
Tips. Ikke glem ARRAUFORMULA-funksjonen som kan hjelpe deg å telle måneder på alle rader samtidig:
=ARRAYFORMULA(DATEDIF(A2:A13, B2:B13, "M"))
Eksempel 2. Antall måneder som ignorerer år
Du trenger kanskje ikke å telle måneder gjennom alle årene mellom start- og sluttdato. Og DATEDIF lar deg gjøre det.
Bare bruk "YM" -enheten, så trekker formelen hele år først, og teller deretter antall måneder mellom datoer:
=DATEDIF(A2, B2, "YM")
Beregn år mellom to datoer i Google Sheets
Det siste (men ikke minst) du kan vise deg er hvordan Google Sheets DATEDIF beregner datoen forskjell i år.
Jeg skal beregne antall år par har vært gift basert på bryllupsdatoene deres og dagens dato:
Som du kanskje allerede har gjettet, vil jeg bruke "Y" -enheten for det:
=DATEDIF(A2, B2, "Y")
Alle disse DATEDIF-formlene er først til å prøve når det gjelder å beregne dager, måneder og år mellom to datoer i Google Sheets.
Hvis saken din ikke kan løses med disse eller hvis du har spørsmål, oppfordrer jeg deg til å dele dem med oss i kommentarfeltetnedenfor.