Funció DATEDIF d'Excel per obtenir la diferència entre dues dates

  • Comparteix Això
Michael Brown

En aquest tutorial, trobareu una explicació senzilla de la funció DATEDIF d'Excel i alguns exemples de fórmules que mostren com comparar dates i calcular la diferència en dies, setmanes, mesos o anys.

Durant les darreres setmanes, hem investigat gairebé tots els aspectes del treball amb dates i hores a Excel. Si has estat seguint la nostra sèrie de blocs, ja saps com inserir i formatar les dates als teus fulls de treball, com calcular els dies laborables, setmanes, mesos i anys, així com sumar i restar dates.

En aquest tutorial, ens centrarem a calcular la diferència de dates a Excel i aprendràs diferents maneres de comptar el nombre de dies, setmanes, mesos i anys entre dues dates.

    Troba fàcilment la diferència entre dues dates a Excel

    Obtenir el resultat com una fórmula ja feta en anys, mesos, setmanes o dies

    Més informació

    Afegeix i resta dates en un parell de clics

    Data del delegat & Creació de fórmules de temps per a un expert

    Més informació

    Calculeu l'edat a Excel sobre la marxa

    I obteniu una fórmula personalitzada

    Més informació

    Excel DATEDIF function - get date difference

    Com el seu nom indica, la funció DATEDIF està pensada per calcular la diferència entre dues dates.

    DATEDIF és una de les poques funcions no documentades a Excel, i perquè és "amagat" no el trobareu a la pestanya Fórmula , ni obtindreu cap pistafuncions:

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

    Si preferiu no mostrar valors zero, podeu embolicar cada DATEDIF a la funció IF de la següent manera:

    =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"

    La fórmula només mostra elements diferents de zero, tal com es mostra a la captura de pantalla següent:

    Per a altres maneres d'obtenir la diferència de data en dies, vegeu Com calcular els dies des de la data o fins a la data a Excel.

    Fórmules DATEDIF per calcular l'edat a Excel

    De fet, calcular l'edat d'algú a partir de la data de naixement és un cas especial de calcular la diferència de data a Excel, on la data de finalització és la data d'avui. Per tant, utilitzeu una fórmula DATEDIF habitual amb la unitat "Y" que retorna el nombre d'anys entre les dates i introduïu la funció TODAY() a l'argument end_date:

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

    On A2 és la data de naixement.

    La fórmula anterior calcula el nombre d'anys complets. Si preferiu obtenir l'edat exacta, inclosos els anys, els mesos i els dies, concateneu tres funcions DATEDIF com vam fer a l'exemple anterior:

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

    I obtindreu el resultat següent :

    Per conèixer altres mètodes per convertir una data de naixement en edat, consulta Com calcular l'edat a partir de la data de naixement.

    Data i amp; Assistent de temps: una manera senzilla de crear fórmules de diferència de dates a Excel

    Com es va demostrar a la primera part d'aquest tutorial, Excel DATEDIF és una funció bastant versàtil adequada per a una varietat d'usos diferents. Tanmateix, n'hi haun inconvenient important: no està documentat per Microsoft, és a dir, no trobareu DATEDIF a la llista de funcions ni veureu cap informació sobre eines d'argument quan comenceu a escriure una fórmula en una cel·la. Per poder utilitzar la funció DATEDIF als vostres fulls de treball, heu de recordar-ne la sintaxi i introduir tots els arguments manualment, la qual cosa pot ser una manera que consumeix molt de temps i propensa a errors, especialment per als principiants.

    Ultimate Suite. per a Excel ho canvia radicalment, ja que ara proporciona la Data & Time Wizard que pot fer gairebé qualsevol fórmula de diferència de data en molt poc temps. A continuació us indiquem com:

    1. Seleccioneu la cel·la on voleu inserir la fórmula.
    2. Aneu a la pestanya Eines Ablebits > Data i amp; Grup Hora i feu clic al grup Data i amp; Botó de l'assistent de temps :

  • El Data i amp; Apareix la finestra de diàleg Time Wizard , canvieu a la pestanya Diferència i proporcioneu dades per als arguments de la fórmula:
    • Feu clic al quadre Data 1 (o feu clic al botó Replega el diàleg a la dreta del quadre) i seleccioneu una cel·la que contingui la primera data.
    • Feu clic al quadre Data 2 i seleccioneu una cel·la amb la segona data.
    • Seleccioneu la unitat o la combinació d'unitats desitjades al menú desplegable Diferència en . Mentre feu això, l'assistent us permetrà previsualitzar el resultat al quadre i la fórmula a la cel·la.
    • Si esteu satisfet amb elprevisualització, feu clic al botó Insereix fórmula , en cas contrari, proveu amb unitats diferents.

    Per exemple, així és com podeu obtenir el nombre de dies entre dues dates a Excel:

    Un cop inserida la fórmula a la cel·la seleccionada, podeu copiar-la a altres cel·les com és habitual fent doble clic o arrossegant el mànec d'emplenament. El resultat serà semblant a aquest:

    Per presentar els resultats de la manera més adequada, hi ha algunes opcions addicionals disponibles:

    • Exclou anys i/o exclou mesos dels càlculs.
    • Mostra o no etiquetes de text com dies , mesos , setmanes i anys .
    • Mostra o no unitats zero .
    • Retorna els resultats com a valors negatius si la data 1 (data d'inici) és superior a la data 2 (data de finalització).

    Com a exemple, anem a obtenir la diferència entre dues dates en anys, mesos, setmanes i dies, ignorant les unitats zero:

    Avantatges d'utilitzar Data & Time Formula Wizard

    A part de la velocitat i la senzillesa, el Data & Time Wizard ofereix alguns avantatges més:

    • A diferència d'una fórmula DATEDIF normal, a una fórmula avançada creada per l'assistent no li importa quina de les dues dates és més petita i quina és més gran. La diferència sempre es calcula perfectament encara que la data 1 (data d'inici) sigui superior a la data 2 (data de finalització).
    • L'assistentadmet totes les unitats possibles (dies, setmanes, mesos i anys) i us permet triar entre 11 combinacions diferents d'aquestes unitats.
    • Les fórmules que l'assistent crea per a vosaltres són fórmules normals d'Excel, de manera que podeu editar-les, copieu-los o moveu-los com sempre. També podeu compartir els vostres fulls de treball amb altres persones i totes les fórmules es mantindran al seu lloc, fins i tot si algú no té Ultimate Suite al seu Excel.

    Així és com calculeu la diferència entre dues dates. en diferents intervals de temps. Tant de bo, la funció DATEDIF i altres fórmules que heu après avui us resultaran útils en el vostre treball.

    Descàrregues disponibles

    Versió totalment funcional de 14 dies d'Ultimate Suite (fitxer .exe)

    sobre quins arguments cal introduir quan comenceu a escriure el nom de la funció a la barra de fórmules. És per això que és important conèixer la sintaxi completa d'Excel DATEDIF per poder utilitzar-la a les vostres fórmules.

    Funció Excel DATEDIF - sintaxi

    La sintaxi de la funció Excel DATEDIF és la següent :

    DATEDIF(data_inici, data_final, unitat)

    S'han de requerir els tres arguments:

    Data_inici : la data inicial del període que voleu calcular.

    Data_final : la data de finalització del període.

    Unitat : la unitat de temps que cal utilitzar per calcular la diferència entre dues dates. En subministrar diferents unitats, podeu obtenir la funció DATEDIF per retornar la diferència de data en dies, mesos o anys. En total, hi ha 6 unitats disponibles, que es descriuen a la taula següent.

    Unitat Significat Explicació
    Y Anys Nombre d'anys complets entre les dates d'inici i de finalització.
    M Meses Nombre de mesos complets entre les dates.
    D Dies Nombre de dies entre la data d'inici i data de finalització.
    MD Dies exclosos anys i mesos La diferència de data en dies, ignorant mesos i anys.
    YD Dies sense comptar els anys La diferència de data en dies, ignorant els anys.
    YM Mesos exclosos dies ianys La diferència de data en mesos, ignorant els dies i els anys.

    Fórmula Excel DATEDIF

    Per obtenir la diferència entre dues dates en Excel, el vostre treball principal és proporcionar les dates d'inici i finalització de la funció DATEDIF. Això es pot fer de diverses maneres, sempre que Excel pugui entendre i interpretar correctament les dates proporcionades.

    Referències de cel·les

    La manera més senzilla de fer una fórmula DATEDIF a Excel és introduir dues dates vàlides en cel·les separades i fer referència a aquestes cel·les. Per exemple, la fórmula següent compta el nombre de dies entre les dates de les cel·les A1 i B1:

    =DATEDIF(A1, B1, "d")

    Cadenes de text

    Excel entén les dates en molts formats de text com ara "1-gen-2023", "1/1/2023", "1 de gener de 2023", etc. Les dates com a cadenes de text entre cometes es poden escriure directament en els arguments d'una fórmula. Per exemple, així és com podeu calcular el nombre de mesos entre les dates especificades:

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

    Números de sèrie

    Com que Microsoft Excel emmagatzema cadascun data com a número de sèrie que comença amb l'1 de gener de 1900, feu servir números corresponents a les dates. Tot i que és compatible, aquest mètode no és fiable perquè la numeració de la data varia en diferents sistemes informàtics. Al sistema de dates de 1900, podeu utilitzar la fórmula següent per trobar el nombre d'anys entre dues dates, l'1 de gener de 2023 i el 31 de desembre de 2025:

    =DATEDIF(44927, 46022, "y")

    Resultats dealtres funcions

    Per saber quants dies hi ha entre avui i el 20 de maig de 2025, aquesta és la fórmula a utilitzar.

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

    Nota. A les vostres fórmules, la data de finalització sempre ha de ser superior a la data d'inici, en cas contrari, la funció DATEDIF d'Excel retorna el #NUM! error.

    Esperem que la informació anterior hagi estat útil per entendre els conceptes bàsics. I ara, vegem com podeu utilitzar la funció DATEDIF d'Excel per comparar les dates dels vostres fulls de treball i retornar la diferència.

    Com obtenir el nombre de dies entre dues dates a Excel

    Si observant amb atenció els arguments de DATEDIF, us heu adonat que existeixen 3 unitats diferents per comptar els dies entre les dates. Quina utilitzar depèn exactament de quines siguin les vostres necessitats.

    Exemple 1. Fórmula DATEDIF d'Excel per calcular la diferència de data en dies

    Suposant que teniu la data d'inici a la cel·la A2 i la data de finalització a cel·la B2 i voleu que Excel retorni la diferència de data en dies. Una fórmula DATEDIF senzilla funciona bé:

    =DATEDIF(A2, B2, "d")

    Sempre que un valor a l'argument data_inici sigui menor que a data_final. En cas que la data d'inici sigui superior a la data de finalització, la funció DATEDIF d'Excel retorna l'error #NUM, com a la fila 5:

    Si busqueu una fórmula que pot retornar la diferència de data en dies com a nombre positiu o negatiu, simplement resta una data directament delaltre:

    =B2-A2

    Vegeu Com restar dates a Excel per obtenir més detalls i més exemples de fórmules.

    Exemple 2. Comptar els dies a Excel ignorant els anys

    Suposant que teniu dues llistes de dates que pertanyen a anys diferents i voleu calcular el nombre de dies entre les dates com si fossin del mateix any. Per fer-ho, utilitzeu una fórmula DATEDIF amb la unitat "YD":

    =DATEDIF(A2, B2, "yd")

    Si voleu que la funció DATEDIF d'Excel ignori no només els anys sinó també arnes i, a continuació, utilitzeu la unitat "md". En aquest cas, la teva fórmula calcularà els dies entre dues dates com si fossin del mateix mes i del mateix any:

    =DATEDIF(A2, B2, "md")

    La captura de pantalla següent mostra els resultats i compara'ls amb el La captura de pantalla anterior pot ajudar a entendre millor la diferència.

    Consell. Per obtenir el nombre de dies laborables entre dues dates, utilitzeu la funció NETWORKDAYS o NETWORKDAYS.INTL.

    Com calcular la diferència de dates en setmanes

    Com probablement heu notat, la funció DATEDIF d'Excel no té una unitat especial per calcular la diferència de data en setmanes. Tanmateix, hi ha una solució fàcil.

    Per saber quantes setmanes hi ha entre dues dates, podeu utilitzar la funció DATEDIF amb la unitat "D" per retornar la diferència en dies i després dividir el resultat per 7.

    Per obtenir el nombre de setmanes completes entre les dates, embolcalla la fórmula DATEDIF ala funció ROUNDDOWN, que arrodoneix sempre el nombre cap a zero:

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

    On A2 és la data d'inici i B2 és la data de finalització del període que esteu calculant.

    Com calcular el nombre de mesos entre dues dates a l'Excel

    De manera similar al recompte de dies, la funció DATEDIF d'Excel pot calcular el nombre de mesos entre dues dates que especifiqueu. En funció de la unitat que subministreu, la fórmula produirà resultats diferents.

    Exemple 1. Calcula mesos complets entre dues dates (DATEDIF)

    Per comptar el nombre de mesos sencers entre les dates, utilitzeu la funció DATEDIF amb la unitat "M". Per exemple, la fórmula següent compara les dates a A2 (data d'inici) i B2 (data de finalització) i retorna la diferència en mesos:

    =DATEDIF(A2, B2, "m")

    Nota. Perquè la fórmula DATEDIF calculi els mesos correctament, la data de finalització sempre ha de ser superior a la data d'inici; en cas contrari, la fórmula retorna l'error #NUM.

    Per evitar aquests errors, podeu forçar Excel a percebre sempre una data més antiga com a data d'inici i una data més recent com a la data de finalització. Per fer-ho, afegiu una prova lògica senzilla:

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

    Exemple 2. Obteniu el nombre de mesos entre dues dates ignorant anys (DATEDIF)

    Per comptar el nombre de mesos entre les dates com si fossin del mateix any, escriviu "YM" a l'argument de la unitat:

    =DATEDIF(A2, B2, "ym")

    Com veieu, aquesta fórmulatambé retorna un error a la fila 6 on la data de finalització és inferior a la data d'inici. Si el vostre conjunt de dades pot contenir aquestes dates, trobareu la solució als exemples següents.

    Exemple 3. Càlcul de mesos entre dues dates (funció MES)

    Una forma alternativa de calcular el nombre de mesos entre dues dates a Excel utilitza la funció MES, o més precisament una combinació de funcions MES i ANY:

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

    Per descomptat, aquesta fórmula no és tan transparent com DATEDIF i triga temps a embolicar la lògica. Però a diferència de la funció DATEDIF, pot comparar dues dates qualsevol i retornar la diferència en mesos com a valor positiu o negatiu:

    Tingueu en compte que la fórmula ANY/MES no té problema amb el càlcul de mesos a la fila 6 on la data d'inici és més recent que la data de finalització, l'escenari en què falla una fórmula DATEDIF anàloga.

    Nota. Els resultats que retornen les fórmules DATEDIF i ANY/MES no sempre són idèntics perquè funcionen en base a principis diferents. La funció DATEDIF d'Excel retorna el nombre de mesos naturals complets entre les dates, mentre que la fórmula ANY/MES opera amb números de mesos.

    Per exemple, a la fila 7 de la captura de pantalla anterior, la fórmula DATEDIF retorna 0 perquè encara no ha transcorregut un mes natural complet entre les dates, mentre que YEAR/MONTH retorna 1 perquè les datespertanyen a mesos diferents.

    Exemple 4. Comptar mesos entre 2 dates ignorant els anys (funció MES)

    En cas que totes les vostres dates siguin del mateix any, o si voleu calcular mesos entre les dates ignorant els anys, podeu utilitzar la funció MES per recuperar el mes de cada data i, a continuació, restar un mes de l'altra:

    =MONTH(B2) - MONTH(A2)

    Aquesta fórmula funciona de manera similar a Excel DATEDIF amb "YM ", tal com es mostra a la captura de pantalla següent:

    No obstant això, els resultats retornats per dues fórmules difereixen és un parell de files:

    • Fila 4 : la data de finalització és inferior a la data d'inici i, per tant, DATEDIF retorna un error mentre que MONTH-MONTH produeix un valor negatiu.
    • Fila 6: les dates són de mesos diferents, però la diferència de data real és només un dia. . DATEDIF retorna 0 perquè calcula mesos sencers entre 2 dates. MES-MES retorna 1 perquè resta els números dels mesos entre ells ignorant els dies i els anys.

    Com calcular els anys entre dues dates a Excel

    Si heu seguit els exemples anteriors on calculem mesos i dies entre dues dates, podeu obtenir fàcilment una fórmula per calcular anys a Excel. Els exemples següents us poden ajudar a comprovar si heu encertat la fórmula :)

    Exemple 1. Càlcul d'anys complets entre dues dates (funció DATEDIF)

    Per esbrinar el nombre d'anys naturals complets entredues dates, utilitzeu l'antiga bona DATEDIF amb la unitat "Y":

    =DATEDIF(A2,B2,"y")

    Observeu que la fórmula DATEDIF retorna 0 a la fila 6, tot i que la les dates són d'anys diferents. Això es deu al fet que el nombre d'anys naturals complets entre les dates d'inici i de finalització és igual a zero. I crec que no us sorprèn veure el #NUM! error a la fila 7, on la data d'inici és més recent que la data de finalització.

    Exemple 2. Càlcul d'anys entre dues dates (funció ANY)

    Una forma alternativa de calcular anys a Excel és utilitzar la funció ANY. De manera similar a la fórmula MES, extreu l'any de cada data i després resteu els anys entre ells:

    =YEAR(B2) - YEAR(A2)

    A la següent captura de pantalla, podeu comparar els resultats que retorna el DATEDIF i funcions ANY:

    En la majoria dels casos els resultats són idèntics, excepte que:

    • La funció DATEDIF calcula els anys naturals complets, mentre que l'ANY La fórmula simplement resta un any de l'altre. La fila 6 il·lustra la diferència.
    • La fórmula DATEDIF retorna un error si la data d'inici és superior a la data de finalització, mentre que la funció ANY retorna un valor negatiu, com a la fila 7.

    Com obtenir la diferència de dates en dies, mesos i anys

    Per comptar el nombre d'anys, mesos i dies complets entre dues dates en una sola fórmula, només cal concatenar tres DATEDIF

    Michael Brown és un entusiasta de la tecnologia dedicat amb una passió per simplificar processos complexos mitjançant eines de programari. Amb més d'una dècada d'experiència en la indústria tecnològica, ha perfeccionat les seves habilitats en Microsoft Excel i Outlook, així com en Google Sheets i Docs. El bloc de Michael es dedica a compartir els seus coneixements i experiència amb altres persones, oferint consells i tutorials fàcils de seguir per millorar la productivitat i l'eficiència. Tant si sou un professional experimentat com si sou un principiant, el bloc de Michael ofereix valuoses idees i consells pràctics per treure el màxim profit d'aquestes eines de programari essencials.