Funkcija Excel DATEDIF za pridobitev razlike med dvema datumoma

  • Deliti To
Michael Brown

V tem priročniku boste našli preprosto razlago funkcije Excel DATEDIF in nekaj primerov formul, ki prikazujejo, kako primerjati datume in izračunati razliko v dnevih, tednih, mesecih ali letih.

V zadnjih nekaj tednih smo raziskali skoraj vse vidike dela z datumi in časi v programu Excel. Če ste spremljali serijo naših blogov, že veste, kako vstaviti in oblikovati datume v delovne liste, kako izračunati delovne dni, tedne, mesece in leta ter seštevati in odštevati datume.

V tem vodniku se bomo osredotočili na izračun razlike datumov v Excelu in se naučili različnih načinov za štetje števila dni, tednov, mesecev in let med dvema datumoma.

    Enostavno poiščite razliko med dvema datumoma v programu Excel

    Pridobite rezultat kot pripravljeno formulo v letih, mesecih, tednih ali dneh.

    Preberi več

    Dodajanje in odštevanje datumov z nekaj kliki

    Delegacija datum & amp; časovne formule gradnjo strokovnjaka

    Preberi več

    Izračunajte starost v Excelu sproti

    In pridobite formulo po meri

    Preberi več

    Funkcija Excel DATEDIF - dobite razliko datumov

    Kot pove že ime, je funkcija DATEDIF namenjena izračunu razlike med dvema datumoma.

    DATEDIF je ena redkih nedokumentiranih funkcij v Excelu in ker je "skrita", je ne boste našli na Formula Prav tako ne boste dobili nobenega namiga o tem, katere argumente morate vnesti, ko začnete vnašati ime funkcije v vrstico formul. Zato je pomembno poznati celotno sintakso funkcije Excel DATEDIF, da jo lahko uporabite v svojih formulah.

    Funkcija Excel DATEDIF - sintaksa

    Sintaksa Excelove funkcije DATEDIF je naslednja:

    DATEDIF(začetni_datum, končni_datum, enota)

    Zahtevani so vsi trije argumenti:

    Start_date - začetni datum obdobja, ki ga želite izračunati.

    End_date - končni datum obdobja.

    Enota - časovno enoto, ki se uporabi pri izračunu razlike med dvema datumoma. Z navedbo različnih enot lahko funkciji DATEDIF omogočite, da vrne razliko datumov v dnevih, mesecih ali letih. Na voljo je 6 enot, ki so opisane v naslednji preglednici.

    Enota Pomen Razlaga:
    Y Leta Število celih let med začetnim in končnim datumom.
    M Meseci Število polnih mesecev med datumoma.
    D Dnevi Število dni med začetnim in končnim datumom.
    MD Dnevi brez let in mesecev Razlika v dnevih, brez upoštevanja mesecev in let.
    YD Dnevi brez let Razlika v dnevih, brez upoštevanja let.
    YM Meseci brez dni in let Razlika v mesecih, brez upoštevanja dni in let.

    Excelova formula DATEDIF

    Če želite v Excelu dobiti razliko med dvema datumoma, morate funkciji DATEDIF posredovati začetni in končni datum. To lahko storite na različne načine, če Excel razume in pravilno interpretira posredovane datume.

    Sklici na celice

    Formulo DATEDIF v Excelu najlažje pripravite tako, da v ločeni celici vnesete dva veljavna datuma in se sklicujete na ti celici. Naslednja formula na primer šteje število dni med datumoma v celicah A1 in B1:

    =DATEDIF(A1, B1, "d")

    Besedilni nizi

    Excel razume datume v številnih besedilnih oblikah, kot so "1-Jan-2023", "1/1/2023", "1. januar 2023" itd. Datume kot besedilne nize, zaprte v narekovajih, lahko vnesete neposredno v argumente formule. Tako lahko na primer izračunate število mesecev med določenima datumoma:

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

    Serijske številke

    Ker Microsoft Excel vsak datum shrani kot zaporedno številko, začenši s 1. januarjem 1900, uporabite številke, ki ustrezajo datumom. Čeprav je ta metoda podprta, ni zanesljiva, saj se številčenje datumov v različnih računalniških sistemih razlikuje. V datotečnem sistemu 1900 lahko s spodnjo formulo ugotovite število let med dvema datumoma, 1. januarjem 2023 in 31. decembrom 2025:

    =DATEDIF(44927, 46022, "y")

    Rezultati drugih funkcij

    Če želite ugotoviti, koliko dni je od danes do 20. maja 2025, uporabite to formulo.

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

    Opomba: V formulah mora biti končni datum vedno večji od začetnega datuma, sicer Excelova funkcija DATEDIF vrne napako #NUM!.

    Upam, da so vam zgornje informacije pomagale razumeti osnove. Zdaj pa si poglejmo, kako lahko Excelovo funkcijo DATEDIF uporabite za primerjavo datumov v delovnih listih in vrnitev razlike.

    Kako pridobiti število dni med dvema datumoma v Excelu

    Če ste pozorno spremljali argumente programa DATEDIF, ste opazili, da obstajajo tri različne enote za štetje dni med datumi. Katero boste uporabili, je odvisno od vaših potreb.

    Primer 1. Excelova formula DATEDIF za izračun razlike datumov v dnevih

    Recimo, da imate začetni datum v celici A2 in končni datum v celici B2 ter želite, da Excel vrne razliko v dnevih. Preprosta formula DATEDIF deluje odlično:

    =DATEDIF(A2, B2, "d")

    Če je vrednost v argumentu start_date manjša od vrednosti v argumentu end_date. Če je začetni datum večji od končnega datuma, Excelova funkcija DATEDIF vrne napako #NUM, kot v vrstici 5:

    Če iščete formulo, ki lahko vrne razliko datumov v dnevih kot pozitivno ali negativno število, preprosto odštejte en datum neposredno od drugega:

    =B2-A2

    Za vse podrobnosti in več primerov formul glejte Kako odšteti datume v Excelu.

    Primer 2. Štetje dni v Excelu brez upoštevanja let

    Denimo, da imate dva seznama datumov, ki spadata v različna leta, in želite izračunati število dni med datumoma, kot da sta iz istega leta. To storite s formulo DATEDIF z enoto "YD":

    =DATEDIF(A2, B2, "yd")

    Če želite, da Excelova funkcija DATEDIF ne upošteva le letnic, temveč tudi mesece, uporabite enoto "md". V tem primeru bo vaša formula izračunala dneve med dvema datumoma, kot da sta v istem mesecu in istem letu:

    =DATEDIF(A2, B2, "md")

    Spodnja zaslonska slika prikazuje rezultate, primerjava z zgornjo zaslonsko sliko pa pomaga bolje razumeti razliko.

    Nasvet. Če želite pridobiti število delovni dnevi med dvema datumoma, uporabite funkcijo NETWORKDAYS ali NETWORKDAYS.INTL.

    Kako izračunati razliko datumov v tednih

    Kot ste verjetno opazili, Excelova funkcija DATEDIF nima posebne enote za izračun razlike datumov v tednih. Vendar je to mogoče enostavno zaobiti.

    Če želite ugotoviti, koliko tednov je med dvema datumoma, lahko uporabite funkcijo DATEDIF z enoto "D", ki vrne razliko v dnevih, nato pa rezultat delite s 7.

    Če želite pridobiti število polni tedni med datumi zavijte formulo DATEDIF v funkcijo ROUNDDOWN, ki število vedno zaokroži proti ničli:

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

    Pri čemer je A2 začetni datum in B2 končni datum obdobja, ki ga izračunavate.

    Kako izračunati število mesecev med dvema datumoma v Excelu

    Podobno kot pri štetju dni lahko Excelova funkcija DATEDIF izračuna število mesecev med dvema datumoma, ki ju določite. Odvisno od enote, ki jo navedete, bo formula dala različne rezultate.

    Primer 1. Izračunajte celotne mesece med dvema datumoma (DATEDIF)

    Če želite prešteti število celih mesecev med datumoma, uporabite funkcijo DATEDIF z enoto "M". Naslednja formula na primer primer primerja datuma v A2 (začetni datum) in B2 (končni datum) ter vrne razliko v mesecih:

    =DATEDIF(A2, B2, "m")

    Opomba: Da bi formula DATEDIF pravilno izračunala mesece, mora biti končni datum vedno večji od začetnega, sicer formula vrne napako #NUM.

    Da bi se izognili takšnim napakam, lahko Excel prisilite, da kot začetni datum vedno zazna starejši datum, kot končni datum pa novejšega. To storite tako, da dodate preprost logični test:

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

    Primer 2. Pridobite število mesecev med dvema datumoma, ki ignorirata leta (DATEDIF)

    Če želite prešteti število mesecev med datumoma, kot da sta v istem letu, vnesite "YM" v argument enote:

    =DATEDIF(A2, B2, "ym")

    Kot vidite, ta formula vrne napako tudi v vrstici 6, kjer je končni datum manjši od začetnega datuma. Če vaš niz podatkov morda vsebuje takšne datume, boste rešitev našli v naslednjih primerih.

    Primer 3. Izračun mesecev med dvema datumoma (funkcija MONTH)

    Druga možnost za izračun števila mesecev med dvema datumoma v Excelu je uporaba funkcije MESEC, natančneje kombinacije funkcij MESEC in LETO:

    =(LETO(B2) - LETO(A2))*12 + MESEC(B2) - MESEC(A2)

    Ta formula seveda ni tako pregledna kot DATEDIF in je potreben čas, da se seznanite z njeno logiko. Za razliko od funkcije DATEDIF pa lahko primerja dva poljubna datuma in vrne razliko v mesecih kot pozitivno ali negativno vrednost:

    Opazite, da formula YEAR/MONTH nima težav z izračunavanjem mesecev v vrstici 6, kjer je začetni datum novejši od končnega, kar je scenarij, pri katerem analogna formula DATEDIF odpove.

    Opomba: Rezultati, ki jih vrneta formuli DATEDIF in YEAR/MONTH, niso vedno enaki, ker delujeta po različnih načelih. celi koledarski meseci med datumi, medtem ko formula LETO/MESEC deluje na številke mesecev.

    Na primer v vrstici 7 na zgornji sliki zaslona formula DATEDIF vrne 0, ker med datumoma še ni minil cel koledarski mesec, formula YEAR/MONTH pa vrne 1, ker datuma pripadata različnim mesecem.

    Primer 4. Štetje mesecev med dvema datumoma z ignoriranjem let (funkcija MONTH)

    Če so vsi vaši datumi istega leta ali če želite izračunati mesece med datumi, ki ne upoštevajo let, lahko s funkcijo MONTH pridobite mesec iz vsakega datuma in nato odštejete en mesec od drugega:

    =MESEC(B2) - MESEC(A2)

    Ta formula deluje podobno kot Excelova DATEDIF z enoto "YM", kot je prikazano na naslednji sliki zaslona:

    Vendar se rezultati, ki jih vrneta dve formuli, razlikujejo za nekaj vrstic:

    • Vrstica 4: končni datum je manjši od začetnega datuma, zato DATEDIF vrne napako, MONTH-MONTH pa da negativno vrednost.
    • Vrstica 6: datuma sta iz različnih mesecev, vendar je dejanska razlika v datumu le en dan. DATEDIF vrne 0, ker med dvema datumoma izračuna cele mesece. MONTH-MONTH vrne 1, ker odšteje številke mesecev med seboj, pri čemer ne upošteva dni in let.

    Kako izračunati leta med dvema datumoma v Excelu

    Če ste sledili prejšnjim primerom, v katerih smo izračunali mesece in dneve med dvema datumoma, potem lahko zlahka izpeljete formulo za izračun let v Excelu. Naslednji primeri vam bodo pomagali preveriti, ali ste formulo pravilno izračunali :)

    Primer 1. Izračun celotnih let med dvema datumoma (funkcija DATEDIF)

    Če želite ugotoviti število celih koledarskih let med dvema datumoma, uporabite staro dobro metodo DATEDIF z enoto "Y":

    =DATEDIF(A2,B2, "y")

    Opazite, da formula DATEDIF v vrstici 6 vrne 0, čeprav sta datuma različnih let. To je zato, ker je število polnih koledarskih let med začetnim in končnim datumom enako nič. Verjamem, da vas ne preseneča napaka #NUM! v vrstici 7, kjer je začetni datum novejšega datuma kot končni datum.

    Primer 2. Izračun let med dvema datumoma (funkcija YEAR)

    Alternativni način za izračun letnic v Excelu je uporaba funkcije YEAR. Podobno kot pri formuli MONTH iz vsakega datuma izluščite letnico, nato pa letnice med seboj odštejete:

    =LETO(B2) - LETO(A2)

    Na naslednji sliki zaslona lahko primerjate rezultate, ki jih vrneta funkciji DATEDIF in YEAR:

    V večini primerov so rezultati enaki, le da:

    • Funkcija DATEDIF izračuna celotna koledarska leta, medtem ko formula YEAR preprosto odšteje eno leto od drugega. V vrstici 6 je prikazana razlika.
    • Formula DATEDIF vrne napako, če je začetni datum večji od končnega datuma, funkcija YEAR pa vrne negativno vrednost, kot v vrstici 7.

    Kako dobiti razliko datumov v dnevih, mesecih in letih

    Če želite v eni sami formuli prešteti število celih let, mesecev in dni med dvema datumoma, preprosto združite tri funkcije DATEDIF:

    =DATEDIF(A2, B2, "y") &" leta, "&DATEDIF(A2, B2, "ym") &" mesece, " &DATEDIF(A2, B2, "md") &" dni"

    Če ne želite prikazovati ničelnih vrednosti, lahko vsak DATEDIF zavijete v funkcijo IF, kot sledi:

    =IF(DATEDIF(A2,B2, "y")=0, "", DATEDIF(A2,B2, "y") & " leta ") & IF(DATEDIF(A2,B2, "ym")=0,"", DATEDIF(A2,B2, "ym") & " mesece ") & IF(DATEDIF(A2, B2, "md")=0, "", DATEDIF(A2, B2, "md") & " dni"

    Formula prikaže samo neničelne elemente, kot je prikazano na naslednji sliki zaslona:

    Za druge načine pridobivanja razlike v dnevih glejte Kako izračunati dneve od datuma ali do datuma v Excelu.

    formule DATEDIF za izračun starosti v Excelu

    Dejansko je izračun starosti nekoga na podlagi datuma rojstva poseben primer izračuna razlike datumov v programu Excel, pri čemer je končni datum današnji datum. Zato uporabite običajno formulo DATEDIF z enoto "Y", ki vrne število let med datumoma, in v argument end_date vnesite funkcijo TODAY():

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

    Pri čemer je A2 datum rojstva.

    Zgornja formula izračuna število celih let. Če želite dobiti natančno starost, vključno z leti, meseci in dnevi, združite tri funkcije DATEDIF, kot smo to storili v prejšnjem primeru:

    =DATEDIF(B2,TODAY(), "y") & " Leta, " & DATEDIF(B2,TODAY(), "ym") & " Meseci, " & DATEDIF(B2,TODAY(), "md") & " Dnevi"

    In dobili boste naslednji rezultat:

    Če želite izvedeti druge metode pretvorbe datuma rojstva v starost, si oglejte Kako izračunati starost iz datuma rojstva.

    Čarovnik za datum in čas - enostaven način za oblikovanje formul za razliko datumov v Excelu

    Kot je bilo prikazano v prvem delu tega priročnika, je Excelova funkcija DATEDIF precej vsestranska funkcija, primerna za različne načine uporabe. Vendar ima eno pomembno pomanjkljivost - Microsoft je ne dokumentira, kar pomeni, da funkcije DATEDIF ne boste našli na seznamu funkcij niti ne boste videli nobenih orodnih vrstic z argumenti, ko boste začeli vnašati formulo v celico. Da bi lahko funkcijo DATEDIF uporabljali vdelovnih listov, si morate zapomniti njegovo sintakso in ročno vnesti vse argumente, kar je lahko zamudno in nagnjeno k napakam, zlasti za začetnike.

    Ultimate Suite za Excel to korenito spreminja, saj zdaj zagotavlja Datum & amp; Čarovnik za čas s katerim lahko v kratkem času spremenite formulo skoraj vseh datumov:

    1. Izberite celico, v katero želite vstaviti formulo.
    2. Pojdite na Orodja Ablebits zavihek> Datum & amp; Čas in kliknite skupino Datum & amp; Čarovnik za čas gumb:

  • Spletna stran Datum & amp; Čarovnik za čas se prikaže pogovorno okno, preklopite na Razlika in navedite podatke za argumente formule:
    • Kliknite na Datum 1 (ali kliknite polje Dialogno okno za zrušitev na desni strani polja) in izberite celico s prvim datumom.
    • Kliknite na Datum 2 in izberite celico z drugim datumom.
    • Izberite želeno enoto ali kombinacijo enot v polju Razlika v Pri tem čarovnik omogoča predogled rezultata v polju in formule v celici.
    • Če ste s predogledom zadovoljni, kliknite Vstavite formulo sicer poskusite z drugimi enotami.

    Tako lahko na primer dobite število dni med dvema datumoma v Excelu:

    Ko je formula vstavljena v izbrano celico, jo lahko kot običajno kopirate v druge celice z dvoklikom ali vlečenjem ročaja za zapolnitev. Rezultat bo podoben temu:

    Za predstavitev rezultatov na najprimernejši način je na voljo še nekaj dodatnih možnosti:

    • Izključite leta in/ali izključite mesece iz izračunov.
    • Prikaži ali ne prikaži besedilne oznake kot je . dni , mesecev , tedni in let .
    • Prikaži ali ne prikaži nič enot .
    • Vračanje rezultatov kot negativne vrednosti če je datum 1 (datum začetka) večji od datuma 2 (datum konca).

    Na primer, dobimo razliko med dvema datumoma v letih, mesecih, tednih in dnevih, pri čemer ne upoštevamo ničelnih enot:

    Prednosti uporabe čarovnika Date & Time Formula Wizard

    Poleg hitrosti in preprostosti ima čarovnik Date & Time Wizard še nekaj drugih prednosti:

    • Za razliko od običajne formule DATEDIF pri napredni formuli, ki jo ustvari čarovnik, ni pomembno, kateri od obeh datumov je manjši in kateri večji. Razlika se vedno izračuna popolno, tudi če je datum 1 (začetni datum) večji od datuma 2 (končni datum).
    • Čarovnik podpira vse možne enote (dnevi, tedni, meseci in leta) in omogoča izbiro med 11 različnimi kombinacijami teh enot.
    • Formule, ki jih čarovnik sestavi za vas, so običajne formule programa Excel, zato jih lahko urejate, kopirate ali premikate kot običajno. Svoje delovne liste lahko delite tudi z drugimi ljudmi in vse formule bodo ostale na mestu, tudi če nekdo v svojem programu Excel nima paketa Ultimate Suite.

    Tako izračunate razliko med dvema datumoma v različnih časovnih intervalih. Upamo, da vam bodo funkcija DATEDIF in druge formule, ki ste jih spoznali danes, koristile pri vašem delu.

    Razpoložljivi prenosi

    Ultimate Suite 14-dnevna popolnoma funkcionalna različica (.exe datoteka)

    Michael Brown je predan tehnološki navdušenec s strastjo do poenostavljanja kompleksnih procesov z uporabo programskih orodij. Z več kot desetletnimi izkušnjami v tehnološki industriji je svoje veščine izpopolnil v Microsoft Excelu in Outlooku ter Google Preglednicah in Dokumentih. Michaelov blog je namenjen deljenju svojega znanja in strokovnega znanja z drugimi ter ponuja preproste nasvete in vadnice za izboljšanje produktivnosti in učinkovitosti. Ne glede na to, ali ste izkušen strokovnjak ali začetnik, Michaelov blog ponuja dragocene vpoglede in praktične nasvete, kako kar najbolje izkoristiti ta osnovna programska orodja.