Az MS Excelnek van egy rendkívül érdekes funkciója, amelyről kevesen tudnak. Olyan keveset, hogy az Excel belépéskor még kontextuális utalást sem ad erre a funkcióra, pedig furcsa módon a programsúgóban van, és egész jól le van írva. Ezt hívják RAZNDAT() vagy DATEDIF()és arra szolgál, hogy automatikusan kiszámítsa a különbséget napokban, hónapokban vagy években két megadott dátum között.
Nem hangzik soknak? Valójában néha nagyon hasznos lehet az a képesség, hogy gyorsan és pontosan kiszámolják, mennyi idő telt el egy esemény óta. Hány hónap telt el a születésnapod óta, mióta ülsz ezen a munkahelyen, vagy hány napja fogyókúrázol – de ki tudja, hány haszna van ennek a hasznos funkciónak? És ami a legfontosabb, a számítás automatizálható, és minden alkalommal, amikor megnyit egy MS Excel munkafüzetet, pontos adatokat kaphat kifejezetten a mai napra! Érdekesen hangzik, nem?
A RAZNDAT() függvénynek három argumentuma van:
- Kezdő dátum- a számlavezetés dátuma
- Végső dátum- amelyre a számolás történik
- Mértékegység- napok, hónapok, évek.
Így van írva:
=DATE(kezdő dátum, befejező dátum, mértékegység)
A mértékegységeket a következőképpen írják fel:
- "y"— dátumkülönbség teljes években
- "m"— dátumkülönbség teljes hónapokban
- "d"— dátumkülönbség teljes napokban
- "yd"— dátumkülönbség napokban az év elejétől, az éveket nem számítva
- "md"— dátumkülönbség napokban a hónapok és évek kivételével
- "ym"— dátumkülönbség teljes hónapokban, az évek nélkül
Más szóval, a jelenlegi életkorom éves kiszámításához a függvényt a következőképpen írom le:
=RASDAT(07/14/1984;03/22/2016;"y")
Kérjük, vegye figyelembe, hogy az utolsó argumentum mindig idézőjelbe kerül.
Ha meg akarom kapni a pontos életkort, akkor írok egy bonyolult képletet:
=RAZNDAT(F2;G2;"y")&" év "&RAZNDAT(F2;G2;"ym")&" hónap"
Amelyben a RAZNDAT() függvényt egyszerre kétszer hívják meg, azzal különböző jelentések, és az „év” és a „hónapok” szavakat egyszerűen az eredményhez kapcsolják. Ez azt jelenti, hogy a funkció valódi ereje csak akkor jelenik meg, ha más MS Excel szolgáltatással kombináljuk.
Egy másik érdekes lehetőség egy számláló hozzáadása a függvényhez, amely naponta mozog a mai dátumhoz képest. Például, ha úgy döntök, hogy írok egy képletet, amely szabványos formában kiszámolja a szabadságomig hátralévő napok számát, az valahogy így fog kinézni:
És minden helyes lenne, ha egy héttel később kinyitva ezt a lapot, azt látnám, hogy csökkent a szabadságig hátralévő napok száma. Viszont ugyanazt a számot fogom látni – mert az eredeti dátumok nem változtak. Ennek megfelelően módosítanom kellene az aktuális dátumot, és akkor a RAZNDAT() függvény mindent helyesen csinálna.
Ennek a bosszantó apróságnak a elkerülése érdekében első érvként (mai dátum) nem a cellában tárolt értékre való hivatkozást, hanem egy másik függvényt fogok helyettesíteni. Ezt a függvényt TODAY()-nek hívják, és fő és egyetlen feladata a mai dátum visszaadása.
Egyszer, és a probléma megoldódott - mostantól valahányszor megnyitom ezt az MS Excel lapot, a RAZNDAT() függvény mindig a mai dátum figyelembevételével számított pontos értéket mutatja.
Bizonyos feladatok Excelben való végrehajtásához meg kell határoznia, hogy hány nap telt el bizonyos dátumok között. Szerencsére a programnak vannak olyan eszközei, amelyek meg tudják oldani ezt a problémát. Nézzük meg, hogyan számíthatja ki a dátumkülönbséget az Excelben.
Mielőtt elkezdené dolgozni a dátumokkal, formáznia kell a cellákat, hogy illeszkedjenek ehhez a formátumhoz. A legtöbb esetben, amikor egy dátumhoz hasonló karakterkészletet ír be, maga a cella újraformázódik. De jobb, ha kézzel csinálja, hogy megvédje magát a meglepetésektől.
![](https://i1.wp.com/lumpics.ru/wp-content/uploads/2017/02/Perehod-v-format-yacheek-v-Microsoft-Excel-6.png)
Ekkor a program dátumként felismeri az összes adatot, amely a kiválasztott cellákban fog szerepelni.
1. módszer: egyszerű számítás
A dátumok közötti napok közötti különbség kiszámításának legegyszerűbb módja a szokásos képlet.
![](https://i0.wp.com/lumpics.ru/wp-content/uploads/2017/02/Datyi-gotovyi-dlya-operatsii-v-Microsoft-Excel.png)
2. módszer: RAZNDAT funkció
A dátumkülönbség kiszámításához speciális függvényt is használhat RAZNDAT. A probléma az, hogy nem szerepel a Funkcióvarázsló listájában, ezért manuálisan kell megadnia a képletet. A szintaxisa így néz ki:
RAZNDAT(kezdő_dátum, záró_dátum, mértékegység)
"Mértékegység"— ez az a formátum, amelyben az eredmény megjelenik a kiválasztott cellában. Az egység, amelyben a teljes összeget visszaadja, attól függ, hogy melyik karaktert szúrja be ebbe a paraméterbe:
- "y" - teljes év;
- "m" - teljes hónap;
- "d" - napok;
- "YM" - különbség hónapokban;
- „MD” a napokban kifejezett különbség (a hónapokat és éveket nem vesszük figyelembe);
- Az „YD” a napokban kifejezett különbség (az éveket nem vesszük figyelembe).
Azt is meg kell jegyezni, hogy a fent leírt egyszerű képletmódszerrel ellentétben ennek a függvénynek a használatakor a kezdő dátumnak kell lennie az első helyen, és a befejezési dátumnak a második helyen. Ellenkező esetben a számítások hibásak lesznek.
![](https://i1.wp.com/lumpics.ru/wp-content/uploads/2017/02/Funktsiya-RAZNDAT-v-Microsoft-Excel.png)
3. módszer: a munkanapok számának kiszámítása
Az Excelben két dátum közötti munkanapok kiszámítása is lehetséges, azaz a hétvégék és az ünnepnapok nélkül. Ehhez használja a függvényt CHISTRABNI. Az előző operátortól eltérően jelen van a Funkcióvarázsló listában. Ennek a függvénynek a szintaxisa a következő:
NETWORKDAYS(kezdő_dátum, záró_dátum, [ünnepnapok])
Ebben a függvényben a fő argumentumok megegyeznek az operátor argumentumaival RAZNDAT- kezdési és befejezési dátum. Van egy opcionális érv is "Ünnepek".
Ehelyett a munkaszüneti napok dátumait kell helyettesítenie a lefedett időszakkal, ha vannak ilyenek. A függvény kiszámítja a megadott tartomány összes napját, kivéve a szombatokat, vasárnapokat, valamint azokat a napokat, amelyeket a felhasználó hozzáadott az argumentumhoz "Ünnepek".
![](https://i0.wp.com/lumpics.ru/wp-content/uploads/2017/02/Perehrd-v-Master-funktsiy-v-Microsoft-Excel.png)
A fenti manipulációk után az előre kiválasztott cellában megjelenik a megadott időszakra vonatkozó munkanapok száma.
Amint láthatja, az Excel meglehetősen kényelmes eszközöket biztosít felhasználóinak a két dátum közötti napok számának kiszámításához. Ugyanakkor, ha csak a napok különbségét kell kiszámítani, akkor a legjobb megoldás egy egyszerű kivonási képlet használata a függvény használata helyett. RAZNDAT. De ha például meg kell számolnia a munkanapok számát, akkor a funkció segít HÁLÓZATNAPOK. Vagyis, mint mindig, a felhasználónak kell döntenie a végrehajtó eszközről, miután beállított egy konkrét feladatot.
Használja a DATEDIF függvényt, ha két dátum közötti különbséget kell kiszámítania. Először írjon be egy kezdő dátumot egy cellába, és egy befejezési dátumot egy másikba. Ezután írjon be egy képletet, például a következők egyikét.
Napi különbség
Ebben a példában a kezdő dátum a D9 cellában, a befejező dátum pedig az E9 cellában található. A képlet az F9-en jelenik meg. "D" számot ad vissza teljes napok két időpont között.
Heti különbség
![](https://i0.wp.com/support.content.office.net/ru-ru/media/41e28163-d081-4314-8464-054d018b9cd3.png)
Ebben a példában a kezdő dátum a D13 cellában, a befejező dátum pedig az E13 cellában található. A "D" a napok számát adja vissza. De figyeld meg, mi van a végén /7 . Ez elosztja a napok számát 7-tel, mivel egy hétben 7 nap van. Vegye figyelembe, hogy ezt az eredményt is számként kell formázni. Nyomja meg a CTRL + 1 billentyűkombinációt. Ezután kattintson szám _gt_ tizedesjegyek: 2.
Különbség hónapokban
![](https://i1.wp.com/support.content.office.net/ru-ru/media/21601e88-a749-4eaf-8eb2-3599512a4ef2.png)
Ebben a példában a kezdő dátum a D5 cellában, a befejező dátum pedig az alsó cellában található. A képletben "m" számot ad vissza teljes hónapok két nap között.
Éves különbség
![](https://i1.wp.com/support.content.office.net/ru-ru/media/af258eaf-039e-4f72-a5ac-e686b25ff131.png)
Ebben a példában a kezdő dátum a D2 cellában, a befejező dátum pedig az E2 cellában található. "Y"
Az életkor kiszámítása felhalmozott években, hónapokban és napokban
1. A RAZNDAT segítségével keresse meg az évek teljes számát.
![](https://i1.wp.com/support.content.office.net/ru-ru/media/21f608e6-6d77-4f8b-8d3c-c1e159376e31.png)
Ebben a példában a kezdő dátum a D17 cellában, a befejező dátum pedig az E17 cellában található. A képletben "y" két nap közötti teljes évek számát adja vissza.
2. Hónapok kereséséhez használja újra a RAZNDAT-ot, a „GM” jelzéssel.
![](https://i1.wp.com/support.content.office.net/ru-ru/media/4833a113-7df4-406b-b7ce-87cced7e6cf0.png)
Egy másik cellában használja a RAZNDAT képletet a paraméterrel "GM". A „GM” az utolsó teljes év után hátralévő hónapok számát adja vissza.
3. Használjon másik képletet a napok kereséséhez.
![](https://i1.wp.com/support.content.office.net/ru-ru/media/a50cd076-9f82-47e6-83a5-6f408a682f84.png)
Most meg kell találnunk a hátralévő napok számát. Ezt megteheti a fent bemutatott más típusú képlet írásával. Ez a képlet levonja a hónap végének első napját (2016. 05. 01.) az E17 cellában lévő eredeti befejezési dátumból (2016. 05. 06.). Ez a következőképpen történik: Először a DÁTUM függvény a 2016. 05. 01. dátumot hozza létre. Az E17 cellában az év, az E17 cellában pedig a hónap használatával jön létre. 1 a hónap első napját jelöli. A DÁTUM függvény eredménye 2016.05.01. Ezután levonjuk ezt a dátumot az E17 cellában lévő eredeti befejezési dátumból (2016.06.05.), így 5 napot kapunk.
4. opcionális: három képlet egyesítése egybe.
![](https://i1.wp.com/support.content.office.net/ru-ru/media/b26bb985-8951-4acb-a4b3-4694d6891596.png)
Mindhárom számítást elhelyezheti egy cellában, amint az ebben a példában látható. „és” jelek, idézőjelek és szöveg használata. Ez egy hosszabb képlet, de legalább az egyikben benne van. Tanács. Az Alt+Enter lenyomásával sortöréseket helyezhet el a képletben. Ez megkönnyíti az olvasást. Továbbá, ha nem látja a teljes képletet, nyomja meg a CTRL+SHIFT+U billentyűkombinációt.
Példák letöltése
Letölthet egy mintakönyvet az ebben a cikkben szereplő összes példával. Előfizethet rájuk, vagy létrehozhat saját képleteket.
Egyéb dátum és idő számítások
A mai nap és egy másik dátum közötti számítás
Ahogy fentebb látható, a DATEDIF függvény kiszámítja a különbséget a kezdő dátum és a befejezés dátuma között. Konkrét dátumok megadása helyett azonban használhatja a funkciót is Ma() a képletben. A TODAY() függvény használatakor az Excel az aktuális dátumot használja a számítógépén. Ne feledje, hogy ha a jövőben újra megnyitja a fájlt, a fájl megváltozik.
![](https://i0.wp.com/support.content.office.net/ru-ru/media/e2f04bef-aff8-4a37-904f-09e0bdab2f22.png)
Munkanapok számítása szabadsággal vagy anélkül
Használja a NETWORKDAYS-t. INTL, ha a két dátum közötti munkanapok számát szeretné kiszámítani. Ezenkívül kizárhatja a hétvégéket és az ünnepnapokat is.
Mielőtt elkezdené, kövesse az alábbi lépéseket: Döntse el, hogy kizárja-e az ünnepi dátumokat. Ha igen, írja be az ünnepnapok listáját egy külön területre vagy lapra. Minden ünnepnap külön cellába kerül. Ezután jelölje ki azokat a cellákat, majd válassza ki képletek _gt_ hozzárendelése Név. Nevezze el a tartományt micholidaisés nyomja meg a gombot rendben. Ezután hozzon létre egy képletet az alábbi lépésekkel.
1. Adja meg a kezdési és a befejezési dátumot.
![](https://i0.wp.com/support.content.office.net/ru-ru/media/d1e0e05b-2c7c-4d8e-9e33-f65324010df9.png)
Ebben a példában a kezdő dátum a D53 cellában, a befejező dátum pedig az E53 cellában található.
2. Egy másik cellába írjon be egy képletet, például:
![](https://i2.wp.com/support.content.office.net/ru-ru/media/e79cbb20-9c72-4fa5-9b40-d7a7756bc2ea.png)
Adjon meg egy képletet, például a fenti példában. A képlet 1-je a "szombat" és a "vasárnap" szabadnapot határozza meg, és kizárja őket az összesítésből.
Jegyzet. Az Excel 2007-ben nincs NETWORKDAYS. NEMZETKÖZI Van azonban TISZTA NAPJA. A fenti példa így nézne ki az Excel 2007-ben: = HÁLÓZATNAPOK (D53, E53). Nem ad meg 1-et, mert a NETWORKDAYS feltételezi, hogy a hétvégék szombat és vasárnap.
3. Szükség esetén módosítsa az 1-es értéket.
![](https://i0.wp.com/support.content.office.net/ru-ru/media/3c049208-0c7a-4cb8-8a92-b537cedaa3e0.png)
Ha szombat és vasárnap nem ünnepnap, módosítsa az 1-es értéket valami másra az IntelliSense listában. Például a 2 a vasárnapot és a hétfőt hétvégének állítja be.
Ha Excel 2007-et használ, hagyja ki ezt a lépést. Az Excel 2007 NETWORKDAYS függvénye mindig azt feltételezi, hogy a hétvégék szombat és vasárnap vannak.
4. Adjon nevet az ünnepi tartománynak.
![](https://i0.wp.com/support.content.office.net/ru-ru/media/e9b593bd-3572-4f29-821e-ff8d2bc00db4.png)
Ha létrehozott egy ünnepi tartománynevet a fenti Kezdő lépések részben, írja be a végére az alábbiak szerint. Ha nincs ünnepnapja, hagyhatja a vesszőt és a Micholydays-t. Ha Excel 2007-et használ, a fenti példa így néz ki: = NETWORKDAYS (D53, E53, szent nap).
Madártoll Ha nem szeretne hivatkozni az ünnepi tartomány nevére, megadhat egy tartományt, például D35:E:39. Alternatív megoldásként minden ünnepnapot megadhat a képletben. Például, ha az ünnepek 2016. január 1-jén és 2-án vannak, írja be a következőképpen: = HÁLÓZATNAPOK. Int (D53, E53, 1, ("1/1/2016", "1/2/2016")). Az Excel 2007-ben így fog kinézni: = HÁLÓZATNAPOK (D53, E53, ("1/1/2016", "1/2 . 2016"})
Az eltöltött idő kiszámítása
Az eltöltött idő kiszámításához kivonhatja az egyik időt a másikból. Először írja be a kezdési időpontot egy cellába, és a befejezési időpontot egy másikba. Győződjön meg arról, hogy minden időpont, beleértve az órákat, perceket és szóközöket is, ki van töltve dél vagy PM előtt. Ehhez a következőket kell tennie:
1. Adja meg a kezdési és befejezési időpontot.
![](https://i1.wp.com/support.content.office.net/ru-ru/media/264d7550-4780-4e40-a2c0-cc28b6844eb1.png)
Ebben a példában a kezdési időpont a D80-as cellában, a befejezési idő pedig az E80-ban van. Ügyeljen arra, hogy órákat, perceket adjon meg és szóközök az AM és PM karakterek előtt.
2. Állítsa be a h/pm formátumot.
![](https://i2.wp.com/support.content.office.net/ru-ru/media/c2821d36-c171-4ebe-b39b-f69c7d6b9550.png)
Válassza ki mindkét dátumot, és nyomja meg a Ctrl+1 billentyűkombinációt (vagy a +1-et Mac gépen). Győződjön meg arról, hogy az opció ki van választva egyedi _gt_ h/pm ha még nincs telepítve.
3. két érték kivonása.
![](https://i1.wp.com/support.content.office.net/ru-ru/media/1b57ad7b-7aef-440b-a626-d76a6d4b975b.png)
Egy másik cellában vonja ki a kezdő cellát a "végi idő" cellából.
4. Állítsa be az óra formátumát.
![](https://i2.wp.com/support.content.office.net/ru-ru/media/f6de02dc-36da-422e-b44d-3b00dcfa36c4.png)
Nyomja meg a CTRL+1-et (vagy a +1-et Mac-en). válassza a " egyedi _gt_" az "AM" és a "PM" eredmények kizárásához.
A feladatterv elkészült egy Excel munkalapon. Egy oszlopban minden egyes feladat teljesítési határideje látható. A kiosztott feladatok lejárt határidejének színes kiemeléséhez szükségünk van az Excel-beli dátumok közötti pontos különbségre. Ehhez feltételes formázást fogunk használni a RAZNDAT képlettel.
Hogyan lehet kiszámítani a dátumok közötti különbséget Excelben
Színesen kell kiemelni azoknak a feladatoknak a nevét, amelyek határideje 7 nap múlva jár le. Példa egy feladatterv táblázatra:
![](https://i0.wp.com/exceltable.com/formatirovanie/images/formatirovanie51-2.png)
![](https://i0.wp.com/exceltable.com/formatirovanie/images/formatirovanie50-5.png)
A határidők lejártának kiemelésének végső hatása 7 nap után:
![](https://i2.wp.com/exceltable.com/formatirovanie/images/formatirovanie51-4.png)
Kiemelve zöld minden olyan feladat, amely 7 napon belül esedékes. Ha megváltoztatja az értékeket a D2 cellában, akkor a többi feladat kiemelésre kerül.
Hasznos tanács! A D2 cellában egy függvény segítségével lekérheti a mai dátumot: =TODAY().
Dátumkülönbség képlete Excelben
A képlet a mai nap és a céldátum közötti különbséget adja vissza napokban. A probléma megoldásához használja az Excel RAZNDAT függvényét: hol találom ezt a képletet?
Ezt a funkciót nem találja meg a függvényvarázslóban vagy még a FORMULAS panelen sem. Mindig kézzel kell megadni. A függvény első argumentumának mindig a legújabb dátumnak, a második argumentumnak pedig mindig a legmagasabb dátumnak kell lennie. A függvény harmadik argumentuma határozza meg a =RAZNDAT() függvény által visszaadott mennyiség mértékegységét. Ebben az esetben a „d” szimbólum – napok. Ez azt jelenti, hogy a függvény a napok számát adja vissza. Ezután jön az operátor<7. То есть формула проверяет, если функция возвращает число меньше чем 7, то формула возвращает значение ИСТИНА и к текущей ячейке применяется условное форматирование. Ссылки на ячейки в первом аргумент абсолютная (значение неизменяемое), а во втором аргументе – относительная, так как проверятся будут несколько ячеек в столбце C.
Ha szükséges, ebbe a tartományba új feltételes formázási szabályt is felvehet, amely 2 héttel előre figyelmeztet bennünket a határidő lejártára. Ehhez hozzá kell adnia egy új feltételes formázási szabályt az A2:A7 tartományhoz, és csak kissé módosítani kell a képletet az új szabályban:
![](https://i2.wp.com/exceltable.com/formatirovanie/images/formatirovanie51-5.png)
A második szabály formázási színe sárgára állítható. 2 feltételes formázási szabályt kell alkalmazni ugyanarra a tartományra. Az ellenőrzéshez válassza ki az eszközt: „KEZDŐLAP” - „Stílusok” - „Feltételes formázás” - „Szabályok kezelése”. Mivel először a felső szabályt hajtjuk végre, a megjelenő ablakban módosítanunk kell a sorrendjüket: „Feltételes formázási szabályok kezelője”. Ellenkező esetben az összes kijelölt feladat sárga cellatöltésű lesz. Csak jelölje ki az első szabályt, és nyomja meg a le gombot (CTRL + lefelé mutató nyíl), az ábrán látható módon:
![](https://i0.wp.com/exceltable.com/formatirovanie/images/formatirovanie51-6.png)
Ennek eredményeként a terv először két héttel, majd egy héttel a feladatok vége előtt figyelmeztet minket:
![](https://i1.wp.com/exceltable.com/formatirovanie/images/formatirovanie51-7.png)
Hasznos tanács! Ha sok szabály van hozzárendelve ugyanahhoz a tartományhoz, kövesse a végrehajtási sorrend prioritási hierarchiáját a Rule Management Managerben. Minél magasabb a szabály, annál magasabb a végrehajtási prioritása az alatta lévő többihez képest.
Az időintervallumok időtartamának kiszámításához a legkényelmesebb a nem dokumentált RAZNDAT( ) , a DATEDIF() angol verziója.
A RAZNDAT() függvény nem található az EXCEL2007 súgójában és innen Funkcióvarázsló (VÁLTÁS+ F3 ), de működik, bár nem hiba nélkül.
Függvény szintaxis:
DATE(kezdő_dátum; záró_dátum; mérési_módszer)
Érv kezdő dátum az érv elé kell kerülnie végső dátum.
Érv mérési_módszer meghatározza, hogy a kezdő és a befejező dátumok közötti intervallum hogyan és milyen mértékegységekben kerül mérésre. Ez az argumentum a következő értékeket veheti fel:
Jelentése |
Leírás |
különbség napokban |
|
különbség teljes hónapokban |
|
különbség teljes években |
|
különbség teljes hónapokban az évek nélkül |
|
napok különbsége a hónapok és évek figyelembevétele nélkül |
|
különbség a napokban, az évek nélkül |
Az alábbiakban mind a 6 argumentumérték részletes leírása található mérési_módszer, valamint alternatív képleteket (a RAZNDAT() függvény más képletekkel is helyettesíthető (bár elég nehézkes). Ez a példafájlban történik).
A példafájlban az argumentum értéke kezdő dátum cellába helyezve A2 , és az argumentum értéke végső dátum– egy cellában AT 2 .
1. Különbség napokban ("d")
A =DATEDAT(A2;B2"d") képlet a két dátum közötti egyszerű különbséget adja vissza napokban.
1. példa:kezdő dátum 25.02.2007, végső dátum 26.02.2007
Eredmény: 1 nap).
Ez a példa azt mutatja, hogy a szolgálati idő kiszámításakor óvatosan kell használni a RAZNDAT() függvényt. Nyilvánvaló, hogy ha egy munkavállaló február 25-én és 26-án dolgozott, akkor 2 napot dolgozott, nem 1-et. Ugyanez vonatkozik a teljes hónapok kiszámítására is (lásd lent).
2. példa:kezdő dátum 01.02.2007, végső dátum 01.03.2007
Eredmény: 28 (nap)
Példa 3:kezdő dátum 28.02.2008, végső dátum 01.03.2008
Eredmény: 2 (nap), mert 2008 szökőév
jegyzet: Ha csak a munkanapok érdekelnek, akkor két dátum közötti k értéket a = HÁLÓZATNAPOK(B2;A2) képlettel lehet kiszámítani.
2. Különbség teljes hónapokban ("m")
A =DATE(A2;B2;"m") képlet a két dátum közötti teljes hónapok számát adja vissza.
1. példa:kezdő dátum 01.02.2007, végső dátum 01.03.2007
Eredmény: 1 hónap)
2. példa:kezdő dátum 01.03.2007, végső dátum 31.03.2007
Eredmény: 0
A szolgálati idő kiszámításakor azt kell figyelembe venni, hogy az a munkavállaló, aki a hónap minden napján dolgozott, 1 teljes hónapot dolgozott. A RAZNDAT() függvény nem így gondolja!
Példa 3:kezdő dátum 01.02.2007, végső dátum 01.03.2009
Eredmény: 25 hónap
=12*(ÉV(B2)-ÉV(A2))-(HÓNAP(A2)-HÓNAP(B2))-(NAP(B2)<ДЕНЬ(A2))
Figyelem: Az MS EXCEL súgójában (lásd az Életkor kiszámítása részt) van egy görbe képlet a 2 dátum közötti hónapok számának kiszámításához:
=(ÉV(TDÁTUM())-ÉV(A3))*12+HÓNAP(TDÁTUM())-HÓNAP(A3)
Ha a TDATE() függvény - az aktuális dátum helyett az 1961.10.31. dátumot használja, és az A3-ba írja be az 1962.11.01. értéket, akkor a képlet 13-at ad vissza, bár 12 hónap és 1 nap telt el ténylegesen (november és 1961 decembere + 1962-ben 10 hónap) .
3. Különbség teljes években ("y")
A =DATE(A2;B2;"y") képlet a két dátum közötti teljes évek számát adja vissza.
1. példa:kezdő dátum 01.02.2007, végső dátum 01.03.2009
Eredmény: 2 év)
2. példa:kezdő dátum 01.04.2007, végső dátum 01.03.2009
Eredmény: 1 év)
A képlet helyettesíthető egy alternatív kifejezéssel:
=HA(DÁTUM(ÉV(B2),HÓNAP(A2),NAP(A2))<=B2;
ÉV(B2)-ÉV(A2);YEAR(B2)-YEAR(A2)-1)
4. Különbség a teljes hónapokban, az évek nélkül ("ym")
A =DASDAT(A2;B2;"ym") képlet a két dátum közötti teljes hónapok számát adja vissza, az éveket nem számítva (lásd az alábbi példákat).
1. példa:kezdő dátum 01.02.2007, végső dátum 01.03.2009
Eredmény: 1 (hónap), mert A 2009. 03. 01-i befejezési dátum és a 02. 02. módosított kezdési dátum összehasonlításra kerül. 2009
(a kezdő dátum éve helyébe a záró dátum éve lép, mivel a 01.02 kisebb, mint a 01.03)
2. példa:kezdő dátum 01.04.2007, végső dátum 01.03.2009
Eredmény: 11 (hónap), mert A 2009. 03. 01-i befejezési dátum és a 01. 04. módosított kezdési dátum összehasonlításra kerül. 2008
(a kezdő dátum éve helyébe a záró dátum éve lép mínusz 1 év, mert 01.04 több mint 01.03)
A képlet helyettesíthető egy alternatív kifejezéssel:
=REMAT(C7;12)
Egy cellában C7
A különbséget teljes hónapokban kell megadni (lásd a 2. pontot).
5. Különbség a napokban, hónapok és évek nélkül ("md")
A =DASDAT(A2;B2;"md") képlet a két dátum közötti napok számát adja vissza, a hónapok és évek figyelembevétele nélkül. Nem ajánlott a RAZNDAT() függvény használata ezzel az argumentummal (lásd az alábbi példákat).
1. példa:kezdő dátum 01.02.2007, végső dátum 06.03.2009
1. eredmény: 5 (nap), mert Összehasonlításra kerül a 2009. 03. 06. záró dátum és a módosított 01. kezdési dátum. 03
.2009
(a kezdő dátum éve és hónapja helyébe a záró dátum éve és hónapja lép, mivel a 01 kisebb, mint 06)
2. példa:kezdő dátum 28.02.2007, végső dátum 28.03.2009
2. eredmény: 0, mert Összehasonlításra kerül a 2009.03.28-i záró dátum és a módosított kezdési dátum 28. 03
.2009
(a kezdő dátum éve és hónapja helyébe a záró dátum éve és hónapja lép)
Példa 3:kezdő dátum 28.02.2009, végső dátum 01.03.2009
3. eredmény: 4 (nap) - teljesen érthetetlen és HELYTELEN eredmény. A válasz =1 legyen. Ráadásul a számítás eredménye az EXCEL verziójától is függ.
EXCEL 2007 verzió SP3-mal:
Eredmény – 143 nap! Több mint nap egy hónapban!
EXCEL 2007 verzió:
2009.02.28. és 2009.03.01. között 4 nap a különbség!
Ráadásul az SP3-mal rendelkező EXCEL 2003-ban a képlet 1 nap múlva adja vissza a helyes eredményt. A 2009.12.31. és 2010.02.01. értékek esetén az eredmény általában negatív (-2 nap)!
Nem javaslom a fenti argumentumértékű képlet használatát. A képlet helyettesíthető egy alternatív kifejezéssel:
=HA(NAP(A2)>NAP(B2);
NAP(HÓNAP(DÁTUM HÓNAP(B2,-1),0))-NAP(A2)+NAP(B2);
DAY(B2)-DAY(A2))
Ez a képlet csak egyenértékű (a legtöbb esetben) kifejezés a RAZNDAT() md paraméterrel. A képlet helyességéről az alábbi „Még egyszer a RAZNDAT() görbületéről” című részben olvashat.
6. Különbség a napokban, az évek nélkül ("yd")
A =DASDAT(A2;B2"yd") képlet a két dátum közötti napok számát adja vissza, az éveket nem számítva. Használata nem javasolt az előző bekezdésben említett okok miatt.
Az =DATEDAT(A2;B2"yd") képlet által visszaadott eredmény az EXCEL verziójától függ.
A képlet helyettesíthető egy alternatív kifejezéssel:
=HA(DATE(ÉV(B2),HÓNAP(A2),NAP(A2))>B2;
B2-DÁTUM(ÉV(B2)-1,HÓNAP(A2),NAP(A2));
B2-DÁTUM(ÉV(B2),HÓNAP(A2),NAP(A2)))
Még egyszer a RAZNDAT() görbületéről
Keressük meg a különbséget a 2015.03.16. és a 01.30.15 dátumok között. Az md és ym paraméterekkel rendelkező RAZNDAT() függvény kiszámítja, hogy a különbség 1 hónap és 14 nap. Ez valóban?
A RAZNDAT()-nak megfelelő képlet birtokában megértheti a számítás folyamatát. Nyilvánvalóan esetünkben a dátumok közötti teljes hónapok száma = 1, azaz. egész februárban. A napok kiszámításához a függvény megkeresi az előző hónap napjainak számát a záró dátumhoz viszonyítva, pl. 28 (a záró dátum márciushoz tartozik, az előző hónap február, 2015-ben pedig 28 nap volt februárban). Ezt követően kivonja a kezdő napot, és hozzáadja a befejező napot = NAP(HÓNAP(DÁTUM HÓNAP(B6,-1),0))-NAP(A6)+NAP(B6), azaz 28-30+16=14. Véleményünk szerint a dátumok és március összes napja között még mindig 1 teljes hónap van, azaz 16 nap, nem 14! Ez a hiba akkor fordul elő, ha az előző hónapban kevesebb nap van a befejező dátumhoz képest, mint a kezdő dátum napjai. Hogyan lehet kikerülni ebből a helyzetből?
Módosítsuk a különbség napjainak kiszámítására szolgáló képletet a hónapok és évek figyelembevétele nélkül:
=HA(NAP(A18)>NAP(B18);HA((NAP(HÓNAP(DÁTUM HÓ(B18,-1),0))-NAP(A18))<0;ДЕНЬ(B18);ДЕНЬ(КОНМЕСЯЦА(ДАТАМЕС(B18;-1);0))-ДЕНЬ(A18)+ДЕНЬ(B18));ДЕНЬ(B18)-ДЕНЬ(A18))
Az új funkció alkalmazásakor figyelembe kell venni, hogy a napok eltérése több kezdési időpontnál is azonos lesz (lásd a fenti ábrát, időpontok 2015.01.28-31.). Más esetekben a képletek egyenértékűek. Milyen formulát használjak? Ezt a felhasználónak kell eldöntenie a feladat körülményeitől függően.