Sisällysluettelo
Tämänpäiväisessä blogikirjoituksessa on kyse kahden päivämäärän välisen eron selvittämisestä Google Sheetsissä. Näet paljon DATEDIF-kaavoja päivien, kuukausien ja vuosien laskemiseen ja opit, miten NETWORKDAYS-kaavoja käytetään vain työpäivien laskemiseen, vaikka lomasi perustuisivat mukautettuun aikatauluun.
Monet taulukkolaskentaohjelmien käyttäjät pitävät päivämääriä hämmentävinä tai jopa erittäin vaikeina käsitellä. Usko tai älä, mutta tähän tarkoitukseen on olemassa muutama kätevä ja suoraviivainen toiminto. DATEDIF ja NETWORKDAYS ovat pari niistä.
DATEDIF-funktio Google Sheetsissä
Kuten funktioiden kohdalla on tapana, niiden nimet viittaavat toimintaan. Sama pätee DATEDIF:iin. Se on luettava seuraavasti päivämäärä dif , ei päivätty jos , ja se tarkoittaa päivämääräero Google Sheetsin DATEDIF laskee siis kahden päivämäärän välisen päivämäärän erotuksen.
Jaetaan se osiin. Funktio vaatii kolme argumenttia:
=DATEDIF(alkupäivä, loppupäivä, yksikkö)- start_date - päivämäärä, jota käytetään lähtökohtana. Sen on oltava jokin seuraavista:
- itse päivämäärä kaksoissulkulausekkeissa: "8/13/2020"
- viittaus soluun, jossa on päivämäärä: A2
- kaava, joka palauttaa päivämäärän: DATE(2020, 8, 13)
- numero, joka tarkoittaa tiettyä päivämäärää ja jonka Google Sheets voi tulkita päivämääräksi, esim. 44056 edustaa elokuu 13, 2020 .
- end_date - päätepisteenä käytettävä päivämäärä, jonka on oltava samassa muodossa kuin tiedosto start_date .
- yksikkö - käytetään kertomaan funktiolle, mikä ero palautetaan. Tässä on täydellinen luettelo yksiköistä, joita voit käyttää:
- "D" - (lyhenne sanoista päivät ) palauttaa kahden päivämäärän välisten päivien määrän.
- "M" - (kuukautta) kahden päivämäärän väliin jäävien kokonaisten kuukausien lukumäärä.
- "Y" - (vuotta) täysien vuosien lukumäärä.
- "MD" - (päivät ilman kuukausia) päivien lukumäärä sen jälkeen, kun kokonaisista kuukausista on vähennetty kokonaiset kuukaudet.
- "YD" - (päivät ilman vuosia) päivien lukumäärä, kun niistä on vähennetty kokonaiset vuodet.
- "YM" - (kuukausia ilman vuosia) täysien kuukausien lukumäärä, kun niistä on vähennetty kokonaiset vuodet.
Huomautus: Kaikki yksiköt on kirjoitettava kaavoihin samalla tavalla kuin edellä - kaksoissulkumerkkeihin.
Kootaan nyt kaikki nämä osat yhteen ja katsotaan, miten DATEDIF-kaavat toimivat Google Sheetsissä.
Kahden päivämäärän välisten päivien laskeminen Google Sheetsissä
Esimerkki 1. Laske kaikki päivät
Minulla on pieni taulukko joidenkin tilausten seuraamiseksi. Kaikki ne on toimitettu elokuun alkupuoliskolla - Lähetyspäivä - joka on minun aloituspäiväni. On myös likimääräinen toimituspäivä - Eräpäivä .
Aion laskea päivät - "D" - lähetys- ja eräpäivien välillä, jotta näen, kuinka kauan tavaroiden saapuminen kestää. Tässä on kaava, jota minun pitäisi käyttää:
=DATEDIF(B2, C2, "D")
Syötän DATEDIF-kaavan D2:een ja kopioin sen sitten saraketta alaspäin sovellettavaksi muille riveille.
Vihje. Voit aina laskea koko sarakkeen kerralla yhdellä kaavalla käyttämällä ARRAYFORMULA:
=ArrayFormula(DATEDIF(B2:B13, C2:C13, "D"))
Esimerkki 2. Päivien laskeminen kuukausia huomioimatta
Kuvittele, että kahden päivämäärän välillä on muutama kuukausi:
Miten lasket vain päivät ikään kuin ne kuuluisivat samaan kuukauteen? Aivan oikein: jättämällä huomiotta kokonaiset kuukaudet, jotka ovat menneet ohi. DATEDIF laskee tämän automaattisesti, kun käytät komentoa "MD" yksikkö:
=DATEDIF(A2, B2, "MD")
Toiminto vähentää kuluneet kuukaudet ja laskee jäljellä olevat päivät.
Esimerkki 3. Päivien laskeminen vuosia huomioimatta
Toinen yksikkö - "YD" - on apuväline silloin, kun päivämäärien välillä on yli vuosi:
=DATEDIF(A2, B2, "YD")
Kaava vähentää ensin vuodet ja laskee sitten jäljellä olevat päivät ikään kuin ne kuuluisivat samaan vuoteen.
Työpäivien laskeminen Google Sheetsissä
Google Sheetsissä on erikoistapaus, jossa sinun on laskettava vain työpäiviä. DATEDIF-kaavoista ei ole paljon apua tässä tapauksessa. Uskon, että olet samaa mieltä siitä, että viikonloppujen vähentäminen manuaalisesti ei ole kaikkein tyylikkäin vaihtoehto.
Onneksi Google Sheetsissä on pari ei-niin-taikamaista loitsua tätä varten :)
Esimerkki 1. NETWORKDAYS-toiminto
Ensimmäinen on nimeltään NETWORKDAYS. Tämä toiminto laskee kahden päivämäärän väliin jäävien työpäivien määrän, lukuun ottamatta viikonloppuja (lauantai ja sunnuntai) ja tarvittaessa jopa vapaapäiviä:
=NETWORKDAYS(alkupäivä, loppupäivä, [vapaapäivät])- start_date - päivämäärä, jota käytetään lähtökohtana. Tarvitaan.
Huomautus: Jos tämä päivä ei ole pyhäpäivä, se lasketaan työpäiväksi.
- end_date - päätepisteenä käytettävä päivämäärä. Pakollinen.
Huomautus: Jos tämä päivä ei ole pyhäpäivä, se lasketaan työpäiväksi.
- lomat - Tämä on valinnainen, kun haluat osoittaa tiettyjä juhlapyhiä. Sen on oltava päivämäärien tai päivämääriä kuvaavien numeroiden alue.
Havainnollistaakseni, miten se toimii, lisään luettelon juhlapyhistä, jotka sijoittuvat lähetys- ja eräpäivien väliin:
Sarakkeessa B on siis alkupäivämäärä, sarakkeessa C loppupäivämäärä ja sarakkeessa E lomapäivät, jotka on otettava huomioon. Kaavan pitäisi näyttää seuraavalta:
=NETWORKDAYS(B2, C2, $E$2:$E$4)
Vihje. Jos aiot kopioida kaavan muihin soluihin, käytä absoluuttisia soluviittauksia lomien aikana virheiden tai virheellisten tulosten välttämiseksi. Tai harkitse sen sijaan matriisikaavan luomista.
Oletko huomannut, miten päivien määrä väheni verrattuna DATEDIF-kaavoihin? Koska nyt funktio vähentää automaattisesti kaikki lauantait, sunnuntait ja kaksi pyhäpäivää, jotka ovat perjantaina ja maanantaina.
Huom. Toisin kuin DATEDIF Google Sheetsissä, NETWORKDAYS laskee start_day ja end_day arkipäiviksi, elleivät ne ole vapaapäiviä. D7 palauttaa siis 1 .
Esimerkki 2. NETWORKDAYS.INTL Google Sheetsille
Jos sinulla on mukautettu viikonloppuaikataulu, hyödyt toisesta toiminnosta: NETWORKDAYS.INTL. Sen avulla voit laskea työpäivät Google Sheetsissä henkilökohtaisesti asetettujen viikonloppujen perusteella:
=NETWORKDAYS.INTL(alkupäivä, loppupäivä, [viikonloppu], [pyhäpäivät])- start_date - päivämäärä, jota käytetään lähtökohtana. Tarvitaan.
- end_date - päätepisteenä käytettävä päivämäärä. Pakollinen.
Huom. Google Sheetsin NETWORKDAYS.INTL lasketaan myös. start_day ja end_day työpäivinä, elleivät ne ole vapaapäiviä.
- viikonloppu - Tämä on valinnainen. Jos se jätetään pois, lauantaita ja sunnuntaita pidetään viikonloppuina. Voit kuitenkin muuttaa tätä kahdella tavalla:
- Naamarit .
Vinkki: Tämä tapa sopii täydellisesti, kun vapaapäiviäsi on hajallaan koko viikolla.
Mask on seitsennumeroinen kuvio, joka koostuu 1:stä ja 0:sta. 1 tarkoittaa viikonloppua, 0 työpäivää. Kuvion ensimmäinen numero on aina maanantai ja viimeinen sunnuntai.
Esimerkiksi, "1100110" tarkoittaa, että työskentelet keskiviikkona, torstaina, perjantaina ja lauantaina.
Huomautus. Maski on laitettava kaksoissulkumerkkeihin.
- Numerot .
Käytä yksinumeroisia numeroita (1-7), jotka kuvaavat sarjan viikonloppuparia:
Numero Viikonloppu 1 Lauantai, sunnuntai 2 Sunnuntai, maanantai 3 Maanantai, tiistai 4 Tiistai, keskiviikko 5 Keskiviikko, torstai 6 Torstai, perjantai 7 Perjantai, lauantai Tai työskentele kaksinumeroisten numeroiden (11-17) kanssa, jotka merkitsevät yhtä lepopäivää viikon aikana:
Numero Viikonloppupäivä 11 Sunnuntai 12 Maanantai 13 Tiistai 14 Keskiviikko 15 Torstai 16 Perjantai 17 Lauantai
- Naamarit .
- lomat - on myös valinnainen, ja sitä käytetään juhlapyhien määrittelyyn.
Tämä toiminto voi vaikuttaa monimutkaiselta kaikkien näiden numeroiden takia, mutta rohkaisen sinua kokeilemaan sitä.
Tee ensin selväksi, mitä vapaapäiviä sinulla on. Tehdään siitä... Sunnuntai ja Maanantai Päätä sitten, miten ilmoitat viikonloppusi.
Jos käytät naamiota, se on tällainen - 1000001 :
=NETWORKDAYS.INTL(B2, C2, "1000001")
Mutta koska minulla on kaksi viikonloppupäivää peräkkäin, voin käyttää edellä olevissa taulukoissa olevaa lukua, 2 minun tapauksessani:
=NETWORKDAYS.INTL(B2, C2, 2)
Lisää sitten vain viimeinen argumentti - viittaus lomiin sarakkeessa E, ja kaava on valmis:
=NETWORKDAYS.INTL(B2, C2, 2, $E$2:$E$4)
Google Sheets ja päivämäärän ero kuukausina
Jos tämä pätee sinuun ja haluat saada päivämäärän erotuksen mieluummin kuukausina kuin päivinä, anna Google Sheetsin DATEDIF-toiminnon tehdä tämä työ.
Esimerkki 1. Kahden päivämäärän väliin jäävien kokonaisten kuukausien lukumäärä
Harjoitus on sama: start_date menee ensin, ja sen jälkeen tulee end_date ja "M" - joka kestää kuukausia - viimeisenä argumenttina:
=DATEDIF(A2, B2, "M")
Vihje. Älä unohda ARRAUFORMULA-funktiota, jonka avulla voit laskea kuukausia kaikilla riveillä kerralla:
=ARRAYFORMULA(DATEDIF(A2:A13, B2:B13, "M"))
Esimerkki 2. Kuukausien lukumäärä ilman vuosia
Sinun ei välttämättä tarvitse laskea kuukausia kaikkien vuosien aikana alku- ja loppupäivämäärien välissä. DATEDIF:n avulla voit tehdä sen.
Käytä vain "YM" ja kaava vähentää ensin kokonaiset vuodet ja laskee sitten päivämäärien väliin jäävien kuukausien määrän:
=DATEDIF(A2, B2, "YM")
Kahden päivämäärän välisten vuosien laskeminen Google Sheetsissä
Viimeisenä (mutta ei vähäisimpänä) näytetään, miten Google Sheets DATEDIF laskee päivämäärien välisen erotuksen vuosina.
Lasken pariskuntien avioliittovuosien määrän heidän hääpäivänsä ja tämän päivän päivämäärän perusteella:
Kuten olet ehkä jo arvannutkin, käytän komentoa "Y" yksikkö sitä varten:
=DATEDIF(A2, B2, "Y")
Kaikki nämä DATEDIF-kaavat ovat ensimmäisiä kokeiltavia kaavoja, kun on kyse päivien, kuukausien ja vuosien laskemisesta kahden päivämäärän välillä Google Sheetsissä.
Jos tapaustasi ei voida ratkaista näillä tai jos sinulla on kysyttävää, kehotan sinua jakamaan ne kanssamme alla olevassa kommenttiosiossa.