Excel DATEDIF-funksjon for å få forskjellen mellom to datoer

  • Dele Denne
Michael Brown

I denne opplæringen finner du en enkel forklaring av Excel DATEDIF-funksjonen og noen formeleksempler som viser hvordan du sammenligner datoer og beregner forskjellen i dager, uker, måneder eller år.

I løpet av de siste ukene har vi undersøkt nesten alle aspekter ved arbeid med datoer og klokkeslett i Excel. Hvis du har fulgt bloggserien vår, vet du allerede hvordan du setter inn og formaterer datoer i regnearkene dine, hvordan du beregner ukedager, uker, måneder og år, samt legger til og trekker fra datoer.

I denne veiledningen, vi vil fokusere på å beregne datoforskjell i Excel og du vil lære forskjellige måter å telle antall dager, uker, måneder og år mellom to datoer.

    Enkelt finne forskjellen mellom to datoer i Excel

    Få resultatet som en ferdig formel i år, måneder, uker eller dager

    Les mer

    Legg til og trekk fra datoer med et par klikk

    Delegert dato & tidsformler bygger til en ekspert

    Les mer

    Beregn alder i Excel i farten

    Og få en skreddersydd formel

    Les mer

    Excel DATEDIF funksjon - få datoforskjell

    Som navnet antyder, er DATEDIF-funksjonen beregnet på å beregne forskjellen mellom to datoer.

    DATEDIF er en av svært få udokumenterte funksjoner i Excel, og fordi den er "skjult" finner du det ikke på Formel -fanen, og du vil heller ikke få noe hintfunksjoner:

    =DATEDIF(A2, B2, "y") &" years, "&DATEDIF(A2, B2, "ym") &" months, " &DATEDIF(A2, B2, "md") &" days"

    Hvis du heller ikke vil vise nullverdier, kan du pakke hver DATEDIF inn i HVIS-funksjonen som følger:

    =IF(DATEDIF(A2,B2,"y")=0, "", DATEDIF(A2,B2,"y") & " years ") & IF(DATEDIF(A2,B2,"ym")=0,"", DATEDIF(A2,B2,"ym") & " months ") & IF(DATEDIF(A2, B2, "md")=0, "", DATEDIF(A2, B2, "md") & " days"

    Formelen viser bare elementer som ikke er null, som vist i følgende skjermbilde:

    For andre måter å få datoforskjell i dager, se Hvordan beregne dager siden eller til dato i Excel.

    DATEDIF-formler for å beregne alder i Excel

    Faktisk er å beregne noens alder basert på fødselsdato et spesielt tilfelle av å beregne datoforskjell i Excel, hvor sluttdatoen er dagens dato. Så du bruker en vanlig DATEDIF-formel med "Y"-enhet som returnerer antall år mellom datoene, og skriver inn TODAY()-funksjonen i end_date-argumentet:

    =DATEDIF(A2, TODAY(), "y")

    Where A2 er fødselsdatoen.

    Formelen ovenfor beregner antall hele år. Hvis du heller vil ha den eksakte alderen, inkludert år, måneder og dager, så sett sammen tre DATEDIF-funksjoner som vi gjorde i forrige eksempel:

    =DATEDIF(B2,TODAY(),"y") & " Years, " & DATEDIF(B2,TODAY(),"ym") & " Months, " & DATEDIF(B2,TODAY(),"md") & " Days"

    Og du vil få følgende resultat :

    For å lære andre metoder for å konvertere en fødselsdato til alder, sjekk ut Hvordan beregne alder fra fødselsdato.

    Dato & Time Wizard - enkel måte å bygge datoforskjellsformler i Excel

    Som vist i den første delen av denne opplæringen, er Excel DATEDIF en ganske allsidig funksjon som passer for en rekke forskjellige bruksområder. Imidlertid er deten betydelig ulempe - det er udokumentert av Microsoft, noe som betyr at du ikke finner DATEDIF i listen over funksjoner, og du vil heller ikke se noen argumentverktøytips når du begynner å skrive en formel i en celle. For å kunne bruke DATEDIF-funksjonen i regnearkene dine, må du huske syntaksen og skrive inn alle argumentene manuelt, noe som kan være en tidkrevende og feilutsatt måte, spesielt for nybegynnere.

    Ultimate Suite for Excel endrer dette radikalt ettersom det nå gir Dato & Tidsveiviser som kan gjøre nesten hvilken som helst datoforskjell på kort tid. Slik gjør du:

    1. Velg cellen der du vil sette inn formelen.
    2. Gå til Ablebits-verktøy -fanen > Dato & Tid -gruppen, og klikk på Dato & Tidsveiviser -knapp:

  • Dato & Tidsveiviser -dialogvinduet vises, du bytter til Differanse -fanen og oppgir data for formelargumentene:
    • Klikk i boksen Dato 1 (eller klikk på Skjul dialogboks -knappen til høyre for boksen) og velg en celle som inneholder den første datoen.
    • Klikk i boksen Dato 2 og velg en celle med den andre datoen.
    • Velg ønsket enhet eller kombinasjon av enheter fra rullegardinmenyen Forskjell i . Mens du gjør dette, lar veiviseren deg forhåndsvise resultatet i boksen og formelen i cellen.
    • Hvis du er fornøyd medforhåndsvisning, klikk på Sett inn formel -knappen, ellers prøv forskjellige enheter.

    Slik kan du for eksempel få antall dager mellom to datoer i Excel:

    Når formelen er satt inn i den valgte cellen, kan du kopiere den til andre celler som vanlig ved å dobbeltklikke eller dra i fyllhåndtaket. Resultatet vil se slik ut:

    For å presentere resultatene på den mest passende måten, er noen flere alternativer tilgjengelige:

    • Ekskluder år og/eller ekskluder måneder fra beregninger.
    • Vis eller ikke vis tekstetiketter som dager , måneder , uker og år .
    • Vis eller ikke vis null enheter .
    • Returner resultatene som negative verdier hvis dato 1 (startdato) er større enn dato 2 (sluttdato).

    La oss som et eksempel se forskjellen mellom to datoer i år, måneder, uker og dager, ignorerer null enheter:

    Fordeler med å bruke Dato & Tidsformelveiviseren

    Bortsett fra hastighet og enkelhet er datoen & Time Wizard gir noen flere fordeler:

    • I motsetning til en vanlig DATEDIF-formel, bryr en avansert formel laget av veiviseren seg ikke hvilken av de to datoene som er mindre og hvilken som er større. Differansen beregnes alltid perfekt selv om dato 1 (startdato) er større enn dato 2 (sluttdato).
    • Veiviserenstøtter alle mulige enheter (dager, uker, måneder og år) og lar deg velge mellom 11 forskjellige kombinasjoner av disse enhetene.
    • Formlene veiviseren bygger for deg er vanlige Excel-formler, så du står fritt til å redigere, kopier eller flytt dem som vanlig. Du kan også dele regnearkene dine med andre, og alle formler forblir på plass, selv om noen ikke har Ultimate Suite i Excel.

    Slik beregner du forskjellen mellom to datoer i ulike tidsintervaller. Forhåpentligvis vil DATEDIF-funksjonen og andre formler du har lært i dag være nyttige i arbeidet ditt.

    Tilgjengelige nedlastinger

    Ultimate Suite 14-dagers fullt funksjonell versjon (.exe-fil)

    på hvilke argumenter du skal legge inn når du begynner å skrive funksjonens navn i formellinjen. Derfor er det viktig å kjenne den fullstendige syntaksen til Excel DATEDIF for å kunne bruke den i formlene dine.

    Excel DATEDIF-funksjon - syntaks

    Syntaksen til Excel DATEDIF-funksjonen er som følger :

    DATEDIF(startdato, sluttdato, enhet)

    Alle tre argumentene kreves:

    Startdato - startdatoen for perioden du vil beregne.

    Sluttdato - sluttdatoen for perioden.

    Enhet - tidsenheten som skal brukes ved beregning av differansen mellom to datoer. Ved å levere forskjellige enheter kan du få DATEDIF-funksjonen til å returnere datoforskjellen i dager, måneder eller år. Totalt sett er 6 enheter tilgjengelig, som er beskrevet i følgende tabell.

    Enhet Betydning Forklaring
    Å År Antall hele år mellom start- og sluttdato.
    M Måneder Antall hele måneder mellom datoene.
    D Dager Antall dager mellom startdato og sluttdato.
    MD Dager unntatt år og måneder Datoforskjellen i dager, ignorert måneder og år.
    YD Dager unntatt år Datoforskjellen i dager, ignorerer år.
    YM Måneder unntatt dager ogår Datoforskjellen i måneder, ignorerer dager og år.

    Excel DATEDIF-formel

    For å få forskjellen mellom to datoer i Excel, hovedoppgaven din er å oppgi start- og sluttdatoene til DATEDIF-funksjonen. Dette kan gjøres på ulike måter, forutsatt at Excel kan forstå og korrekt tolke de oppgitte datoene.

    Cellereferanser

    Den enkleste måten å lage en DATEDIF-formel i Excel er å legge inn to gyldige datoer i separate celler og referere til disse cellene. For eksempel teller følgende formel antall dager mellom datoene i cellene A1 og B1:

    =DATEDIF(A1, B1, "d")

    Tekststrenger

    Excel forstår datoer i mange tekstformater som "1-jan-2023", "1/1/2023", "1. januar 2023" osv. Datoene som tekststrenger omsluttet av anførselstegn kan skrives direkte i en formels argumenter. Dette er for eksempel hvordan du kan beregne antall måneder mellom de angitte datoene:

    =DATEDIF("1/1/2023", "12/31/2025", "m")

    Serienumre

    Siden Microsoft Excel lagrer hver dato som et serienummer som begynner med 1. januar 1900, bruker du tall som tilsvarer datoene. Selv om den støttes, er denne metoden ikke pålitelig fordi datonummerering varierer på forskjellige datasystemer. I 1900-datosystemet kan du bruke formelen nedenfor for å finne antall år mellom to datoer, 1-jan-2023 og 31-des-2025:

    =DATEDIF(44927, 46022, "y")

    Resultater avandre funksjoner

    For å finne ut hvor mange dager det er mellom i dag og 20. mai 2025, er dette formelen som skal brukes.

    =DATEDIF(TODAY(), "5/20/2025", "d")

    Merk. I formlene dine må sluttdatoen alltid være større enn startdatoen, ellers returnerer Excel DATEDIF-funksjonen #NUM! feil.

    Forhåpentligvis har informasjonen ovenfor vært nyttig for å forstå det grunnleggende. Og nå, la oss se hvordan du kan bruke Excel DATEDIF-funksjonen til å sammenligne datoer i regnearkene dine og returnere forskjellen.

    Hvordan får du antall dager mellom to datoer i Excel

    Hvis du observerte DATEDIFs argumenter nøye, du har lagt merke til at det finnes 3 forskjellige enheter for å telle dager mellom datoene. Hvilken du skal bruke avhenger av nøyaktig hvilke behov du har.

    Eksempel 1. Excel DATEDIF-formel for å beregne datoforskjell i dager

    Forutsatt at du har startdatoen i celle A2 og sluttdatoen i celle B2 og du vil at Excel skal returnere datoforskjellen i dager. En enkel DATEDIF-formel fungerer helt fint:

    =DATEDIF(A2, B2, "d")

    Forutsatt at en verdi i startdato-argumentet er mindre enn i sluttdato. I tilfelle startdatoen er større enn sluttdatoen, returnerer Excel DATEDIF-funksjonen #NUM-feilen, som i rad 5:

    Hvis du leter etter en formel som kan returnere datoforskjellen i dager som enten et positivt eller negativt tall, trekk ganske enkelt én dato direkte fraannet:

    =B2-A2

    Se Hvordan trekke fra datoer i Excel for fullstendige detaljer og flere formeleksempler.

    Eksempel 2. Tell dager i Excel og ignorer år

    Anta at du har to lister over datoer som tilhører forskjellige år og du ønsker å beregne antall dager mellom datoene som om de var fra samme år. For å gjøre dette, bruk en DATEDIF-formel med "YD"-enhet:

    =DATEDIF(A2, B2, "yd")

    Hvis du vil at Excel DATEDIF-funksjonen skal ignorere ikke bare år, men også møll, bruk deretter "md"-enheten. I dette tilfellet vil formelen din beregne dager mellom to datoer som om de var fra samme måned og samme år:

    =DATEDIF(A2, B2, "md")

    Skjermbildet nedenfor viser resultatene og sammenligner det med skjermbilde ovenfor kan hjelpe deg med å forstå forskjellen bedre.

    Tips. For å få antall arbeidsdager mellom to datoer, bruk funksjonen NETWORKDAYS eller NETWORKDAYS.INTL.

    Hvordan beregne datoforskjell i uker

    Som du sikkert har lagt merke til, Excel DATEDIF-funksjonen har ikke en spesiell enhet for å beregne datoforskjell i uker. Det er imidlertid en enkel løsning.

    For å finne ut hvor mange uker det er mellom to datoer, kan du bruke DATEDIF-funksjonen med "D"-enhet for å returnere differansen i dager, og deretter dele resultatet på 7.

    For å få antall hele uker mellom datoene, pakk inn DATEDIF-formelen dinRUNDDOWN-funksjonen, som alltid runder av tallet mot null:

    =ROUNDDOWN((DATEDIF(A2, B2, "d") / 7), 0)

    Hvor A2 er startdatoen og B2 er sluttdatoen for perioden du beregner.

    Hvordan beregne antall måneder mellom to datoer i Excel

    I likhet med å telle dager, kan Excel DATEDIF-funksjonen beregne antall måneder mellom to datoer som du angir. Avhengig av enheten du leverer, vil formelen gi forskjellige resultater.

    Eksempel 1. Beregn hele måneder mellom to datoer (DATEDIF)

    For å telle antall hele måneder mellom datoene, bruk DATEDIF-funksjonen med "M"-enhet. For eksempel sammenligner følgende formel datoene i A2 (startdato) og B2 (sluttdato) og returnerer differansen i måneder:

    =DATEDIF(A2, B2, "m")

    Merk. For at DATEDIF-formelen skal beregne måneder riktig, bør sluttdatoen alltid være større enn startdatoen. ellers returnerer formelen #NUM-feilen.

    For å unngå slike feil kan du tvinge Excel til alltid å oppfatte en eldre dato som startdatoen, og en nyere dato som sluttdatoen. For å gjøre dette, legg til en enkel logisk test:

    =IF(B2>A2, DATEDIF(A2,B2,"m"), DATEDIF(B2,A2,"m"))

    Eksempel 2. Få antall måneder mellom to datoer som ignorerer år (DATEDIF)

    For å telle antall måneder mellom datoene som om de var fra samme år, skriv "YM" i enhetsargumentet:

    =DATEDIF(A2, B2, "ym")

    Som du ser, denne formelenreturnerer også en feil i rad 6 der sluttdatoen er mindre enn startdatoen. Hvis datasettet ditt kan inneholde slike datoer, finner du løsningen i de neste eksemplene.

    Eksempel 3. Beregne måneder mellom to datoer (MONTH-funksjon)

    En alternativ måte å beregne tallet på av måneder mellom to datoer i Excel bruker MONTH-funksjonen, eller mer presist en kombinasjon av MONTH- og YEAR-funksjoner:

    =(YEAR(B2) - YEAR(A2))*12 + MONTH(B2) - MONTH(A2)

    Selvfølgelig er ikke denne formelen så gjennomsiktig som DATEDIF og den det tar tid å vikle hodet rundt logikken. Men i motsetning til DATEDIF-funksjonen, kan den sammenligne alle to datoer og returnere forskjellen i måneder som enten en positiv eller negativ verdi:

    Merk at ÅR/MÅNED-formelen ikke har noen problem med å beregne måneder i rad 6 der startdatoen er nyere enn sluttdatoen, scenariet der en analog DATEDIF-formel mislykkes.

    Merk. Resultatene som returneres av DATEDIF- og YEAR/MONTH-formler er ikke alltid identiske fordi de fungerer basert på forskjellige prinsipper. Excel DATEDIF-funksjonen returnerer antall fullstendige kalendermåneder mellom datoene, mens ÅR/MÅNED-formelen opererer på måneders tall.

    For eksempel, i rad 7 i skjermbildet ovenfor, DATEDIF-formelen returnerer 0 fordi en hel kalendermåned mellom datoene ennå ikke har gått, mens YEAR/MONTH returnerer 1 fordi datoenetilhører forskjellige måneder.

    Eksempel 4. Å telle måneder mellom 2 datoer og ignorere år (MONTH-funksjonen)

    Hvis alle datoene dine er fra samme år, eller du ønsker å beregne måneder mellom datoene ignorerer år, kan du MÅNED-funksjonen for å hente måneden fra hver dato, og deretter trekke en måned fra den andre:

    =MONTH(B2) - MONTH(A2)

    Denne formelen fungerer på samme måte som Excel DATEDIF med "YM " enhet som vist i følgende skjermbilde:

    Men resultatene som returneres av to formler er forskjellige, er et par rader:

    • Rad 4 : sluttdatoen er mindre enn startdatoen og derfor returnerer DATEDIF en feil mens MONTH-MONTH gir en negativ verdi.
    • Rad 6: datoene er fra forskjellige måneder, men den faktiske datoforskjellen er bare én dag . DATEDIF returnerer 0 fordi den beregner hele måneder mellom 2 datoer. MONTH-MONTH returnerer 1 fordi den trekker månedenes tall fra hverandre og ignorerer dager og år.

    Hvordan beregne år mellom to datoer i Excel

    Hvis du fulgte de forrige eksemplene hvor vi beregnet måneder og dager mellom to datoer, så kan du enkelt utlede en formel for å beregne år i Excel. Følgende eksempler kan hjelpe deg å sjekke om du har fått formelen riktig :)

    Eksempel 1. Beregne hele år mellom to datoer (DATEDIF-funksjon)

    For å finne ut antall komplette kalenderår mellomto datoer, bruk den gamle gode DATEDIF med "Y"-enheten:

    =DATEDIF(A2,B2,"y")

    Merk at DATEDIF-formelen returnerer 0 i rad 6, selv om datoene er forskjellige år. Dette er fordi antallet hele kalenderår mellom start- og sluttdatoen er lik null. Og jeg tror du ikke er overrasket over å se #NUM! feil i rad 7 hvor startdatoen er nyere enn sluttdatoen.

    Eksempel 2. Beregning av år mellom to datoer (ÅR-funksjon)

    En alternativ måte å beregne år i Excel er å bruke funksjonen ÅR. På samme måte som MÅNED-formelen trekker du ut året fra hver dato, og trekker deretter årene fra hverandre:

    =YEAR(B2) - YEAR(A2)

    I følgende skjermbilde kan du sammenligne resultatene returnert av DATEDIF og YEAR-funksjoner:

    I de fleste tilfeller er resultatene identiske, bortsett fra at:

    • DATEDIF-funksjonen beregner komplette kalenderår, mens YEAR formel trekker ganske enkelt ett år fra det andre. Rad 6 illustrerer forskjellen.
    • DATEDIF-formelen returnerer en feil hvis startdatoen er større enn sluttdatoen, mens funksjonen ÅR returnerer en negativ verdi, som i rad 7.

    Hvordan få datoforskjell i dager, måneder og år

    For å telle antall komplette år, måneder og dager mellom to datoer i en enkelt formel, setter du ganske enkelt sammen tre DATEDIF

    Michael Brown er en dedikert teknologientusiast med en lidenskap for å forenkle komplekse prosesser ved hjelp av programvareverktøy. Med mer enn ti års erfaring i teknologibransjen, har han forbedret ferdighetene sine i Microsoft Excel og Outlook, samt Google Sheets og Docs. Michaels blogg er dedikert til å dele sin kunnskap og ekspertise med andre, og gir enkle å følge tips og veiledninger for å forbedre produktivitet og effektivitet. Enten du er en erfaren profesjonell eller nybegynner, tilbyr Michaels blogg verdifull innsikt og praktiske råd for å få mest mulig ut av disse viktige programvareverktøyene.