Google Sheets'da DATEDIF va NETWORKDAYS: kunlar, oylar va yillardagi sana farqi

  • Buni Baham Ko'Ring
Michael Brown

Bugungi blog posti Google Sheets-dagi ikki sana o'rtasidagi farqni aniqlashga qaratilgan. Siz kunlar, oylar va yillarni hisoblash uchun ko'plab DATEDIF formulalarini ko'rasiz va bayramlaringiz maxsus jadvalga asoslangan bo'lsa ham, NETWORKDAYS ish kunlarini hisoblash uchun qanday ishlatilishini bilib olasiz.

Ko'plab elektron jadvallar foydalanuvchilar topadi. sanalar chalkash, agar juda qiyin bo'lmasa, hal qilish. Lekin ishoning yoki ishonmang, bu maqsadda bir nechta qulay va sodda funktsiyalar mavjud. DATEDIF va NETWORKDAYS ularning bir nechtasi.

    Google Sheets-dagi DATEDIF funksiyasi

    Funksiyalar bilan bo'lgani kabi, ularning nomlari ham amalni taklif qiladi. Xuddi shu narsa DATEDIF uchun ham amal qiladi. U date dif deb o'qilishi kerak, sanali if emas, balki sana farqi degan ma'noni anglatadi. Shunday qilib, Google Sheets'dagi DATEDIF ikki sana o'rtasidagi sana farqini hisoblab chiqadi.

    Keling, uni qismlarga ajratamiz. Funksiya uchta argumentni talab qiladi:

    =DATEDIF(start_date, end_date, unit)
    • start_date – boshlanish nuqtasi sifatida ishlatiladigan sana. Bu quyidagilardan biri boʻlishi kerak:
      • sananing oʻzi ikki qoʻshtirnoq ichida: "8/13/2020"
      • sanali katakka havola: A2
      • sanani qaytaruvchi formula: DATE(2020, 8, 13)
      • ma'lum bir sanani bildiruvchi raqam Google Sheets tomonidan sana sifatida talqin qilinishi mumkin, masalan. 44056 2020-yil 13-avgust ni bildiradi.
    • tugash_sanasi – ishlatilgan sanayakuniy nuqta sifatida. U boshlanish_sanasi bilan bir xil formatda bo'lishi kerak.
    • birlik – funksiyaga qanday farqni qaytarish kerakligini aytish uchun ishlatiladi. Siz foydalanishingiz mumkin bo'lgan birliklarning to'liq ro'yxati:
      • "D" – ( kun uchun qisqa) ikki sana orasidagi kunlar sonini qaytaradi.
      • "M" – (oylar) ikki sana orasidagi to'liq oylar soni.
      • "Y" - (yillar) to'liq yillar soni.
      • "MD" – (oylar hisobga olinmagan kunlar) butun oylarni ayirishdan keyingi kunlar soni.
      • "YD" – (yillar hisobga olinmagan kunlar) butun yillarni ayirgandan keyingi kunlar soni.
      • "YM" – (yillarni hisobga olmagan oylar) to'liq yillarni ayirgandan keyingi to'liq oylar soni.

    Eslatma. Barcha birliklar formulalarga yuqorida ko'rsatilganidek qo'yilishi kerak - ikki tirnoq ichida.

    Endi bu qismlarni birlashtiramiz va DATEDIF formulalari Google Sheets'da qanday ishlashini ko'rib chiqamiz.

    Google Sheets-da ikki sana orasidagi kunlarni hisoblang

    1-misol. Barcha kunlarni sanash

    Ba'zi buyurtmalarni kuzatish uchun menda kichik stol bor. Ularning barchasi avgust oyining birinchi yarmida jo'natildi - Yetkazib berish sanasi - bu mening boshlanish sanasi bo'ladi. Taxminiy yetkazib berish sanasi ham bor – To'lov muddati .

    Men kunlarni hisoblayman – "D" - orasida tovarlar yetib borishi qancha vaqt ketishini ko'rish uchun jo'natish va tugash sanalari. Men foydalanishim kerak bo'lgan formula:

    =DATEDIF(B2, C2, "D")

    Men kiritamanDATEDIF formulasini D2 ga kiriting va boshqa qatorlarga qoʻllash uchun uni ustun boʻylab koʻchiring.

    Maslahat. Siz har doim ARRAYFORMULA yordamida butun ustunni birdaniga bitta formula bilan hisoblashingiz mumkin:

    =ArrayFormula(DATEDIF(B2:B13, C2:C13, "D"))

    2-misol. Oylarni e'tiborsiz qoldirib kunlarni sanash

    Tasavvur qiling ikki sana orasida bir necha oy bor:

    Qanday qilib faqat kunlarni xuddi shu oyga tegishli deb hisoblaysiz? To'g'ri: o'tgan to'liq oylarni e'tiborsiz qoldirib. DATEDIF buni "MD" birligidan foydalanganda avtomatik ravishda hisoblab chiqadi:

    =DATEDIF(A2, B2, "MD")

    Funktsiya o'tgan oylarni ayiradi va qolgan kunlarni hisoblaydi .

    3-misol. Yillarni e'tiborsiz qoldirgan kunlarni sanash

    Boshqa bir birlik - "YD" - sanalar orasida bir yildan ortiq vaqt bo'lganda yordam beradi:

    =DATEDIF(A2, B2, "YD")

    Formula avval yillarni ayiradi, so'ngra qolgan kunlarni xuddi shu yilga tegishlidek hisoblab chiqadi.

    Google Sheets'dagi ish kunlarini sanash

    Google Sheets-da faqat ish kunlarini hisoblash kerak bo'lgan alohida holat mavjud. DATEDIF formulalari bu yerda unchalik yordam bermaydi. Dam olish kunlarini qo‘lda ayirish eng nafis variant emasligiga rozi bo‘lasiz deb o‘ylayman.

    Yaxshiyamki, Google Sheets-da buning uchun bir nechta sehrli bo‘lmagan afsunlar mavjud :)

    1-misol. NETWORKDAYS funksiyasi

    Birinchisi NETWORKDAYS deb ataladi. Bu funksiya dam olish kunlaridan tashqari ikki sana orasidagi ish kunlari sonini hisoblab chiqadi (shanba vaYakshanba) va kerak bo'lsa bayramlar ham:

    =TARMOQ KUNLARI(boshlanish_sanasi, tugash_sanasi, [bayramlar])
    • boshlanish_sanasi - boshlang'ich nuqta sifatida ishlatiladigan sana. Majburiy.

      Eslatma. Agar bu sana dam olish kuni bo'lmasa, u ish kuni hisoblanadi.

    • tugash_date - oxirgi nuqta sifatida ishlatiladigan sana. Majburiy.

      Eslatma. Agar bu sana dam olish kuni bo'lmasa, u ish kuni hisoblanadi.

    • bayramlar - bu maxsus bayramlarni ko'rsatishingiz kerak bo'lganda ixtiyoriy. Bu sanalarni ifodalovchi sanalar yoki raqamlar oralig'i bo'lishi kerak.

    Uning qanday ishlashini ko'rsatish uchun men etkazib berish va to'lov sanalari oralig'ida bo'ladigan bayramlar ro'yxatini qo'shaman:

    Demak, B ustuni mening boshlanish sanasi, C ustunlari - tugash sanasi. E ustunidagi sanalar e'tiborga olinadigan bayramlardir. Formula qanday ko'rinishi kerak:

    =NETWORKDAYS(B2, C2, $E$2:$E$4)

    Maslahat. Agar formulani boshqa hujayralarga ko'chirmoqchi bo'lsangiz, xatolar yoki noto'g'ri natijalarga yo'l qo'ymaslik uchun bayramlar uchun mutlaq hujayralar havolalaridan foydalaning. Yoki uning o'rniga massiv formulasini yaratishni o'ylab ko'ring.

    DATEDIF formulalariga nisbatan kunlar soni qanday kamayganini payqadingizmi? Chunki endi funksiya barcha shanba, yakshanba va juma va dushanba kunlari boʻladigan ikkita bayramni avtomatik ravishda ayiradi.

    Eslatma. Google Sheets’dagi DATEDIF’dan farqli o‘laroq, NETWORKDAYS bayram kunlaridan tashqari, boshlanish_kun va yakun_kun ni ish kuni deb hisoblaydi. Demak, D7 1 ni qaytaradi.

    2-misol.Google Sheets uchun NETWORKDAYS.INTL

    Agar sizda dam olish kunlari maxsus jadvalingiz boʻlsa, siz boshqa funksiyadan foydalanasiz: NETWORKDAYS.INTL. Bu sizga Google Sheets’da ish kunlarini shaxsan belgilangan dam olish kunlari asosida hisoblash imkonini beradi:

    =NETWORKDAYS.INTL(boshlanish_sanasi, tugash_sanasi, [hafta oxiri, [bayramlar])
    • boshlanish_sanasi – a boshlanish nuqtasi sifatida ishlatiladigan sana. Majburiy.
    • tugash_date – oxirgi nuqta sifatida ishlatiladigan sana. Majburiy.

      Eslatma. Google Sheets'dagi NETWORKDAYS.INTL shuningdek, boshlanish_kun va yakun_kun ni, dam olish kunlaridan tashqari ish kunlari sifatida hisobga oladi.

    • hafta oxiri - bu kun ixtiyoriy. Agar o'tkazib yuborilsa, shanba va yakshanba dam olish kunlari hisoblanadi. Lekin siz buni ikki yo'l bilan o'zgartirishingiz mumkin:
      • Niqoblar .

        Maslahat. Bu usul dam olish kunlaringiz hafta bo‘ylab tarqalib ketganda juda mos keladi.

        Maska 1 va 0 dan iborat yetti xonali naqshdir. 1 dam olish kunini, 0 ish kunini anglatadi. Naqshdagi birinchi raqam har doim dushanba, oxirgisi - yakshanba.

        Masalan, "1100110" siz chorshanba, payshanba, juma va shanba kunlari ishlayotganingizni bildiradi.

        Eslatma. Niqob ikki tirnoq ichida qo'yilishi kerak.

      • Raqamlar .

        Dam olish kunlarini bildiruvchi bir xonali raqamlardan (1-7) foydalaning:

        Raqam Dam olish kunlari
        1 Shanba, Yakshanba
        2 Yakshanba, Dushanba
        3 Dushanba, seshanba
        4 Seshanba,Chorshanba
        5 Chorshanba, payshanba
        6 Payshanba, juma
        7 Juma, shanba

        Yoki dam olish uchun bir kunni bildiruvchi ikki xonali raqamlar (11-17) bilan ishlang. bir hafta ichida:

        Raqam Dam olish kuni
        11 Yakshanba
        12 Dushanba
        13 Seshanba
        14 Chorshanba
        15 Payshanba
        16 Juma
        17 Shanba
    • bayramlar - u ham ixtiyoriy va bayramlarni belgilash uchun ishlatiladi.

    Bu funksiya oʻsha raqamlar tufayli murakkab boʻlib tuyulishi mumkin, lekin uni sinab koʻrishingizni tavsiya qilaman.

    Birinchidan, shunchaki dam olish kunlari haqida aniq tushunchaga ega bo'ling. Keling, Yakshanba va Dushanba ni qilaylik. Keyin, dam olish kunlarini ko'rsatish yo'lini belgilang.

    Agar siz niqob bilan borsangiz, u shunday bo'ladi - 1000001 :

    =NETWORKDAYS.INTL(B2, C2, "1000001")

    Ammo menda ketma-ket ikki dam olish kuni borligi sababli, yuqoridagi jadvallardagi raqamdan foydalanishim mumkin, mening holimda 2 :

    =NETWORKDAYS.INTL(B2, C2, 2)

    Keyin shunchaki qo'shing oxirgi argument - E ustunidagi bayramlarga qarang va formula tayyor:

    =NETWORKDAYS.INTL(B2, C2, 2, $E$2:$E$4)

    Google Sheets va oylardagi sana farqi

    Ba'zan oylar kundan ko'ra muhimroqdir. Agar bu siz uchun to'g'ri bo'lsa va sana farqini kunlar emas, oylar bilan olishni afzal ko'rsangiz, Google Sheetsga ruxsat beringDATEDIF vazifani bajaradi.

    Misol 1. Ikki sana orasidagi toʻliq oylar soni

    Matkap bir xil: avval boshlanish_sanasi , keyin esa end_date va "M" – bu oylarni anglatadi – yakuniy dalil sifatida:

    =DATEDIF(A2, B2, "M")

    Maslahat. Bir vaqtning o'zida barcha qatorlardagi oylarni sanashga yordam beradigan ARRAUFORMULA funksiyasi haqida unutmang:

    =ARRAYFORMULA(DATEDIF(A2:A13, B2:B13, "M"))

    2-misol. Yillarni e'tiborsiz qoldiradigan oylar soni

    Sizga kerak bo'lmasligi mumkin. boshlanish va tugash sanalari orasidagi barcha yillar davomida oylarni sanash. Va DATEDIF buni amalga oshirish imkonini beradi.

    Shunchaki "YM" birligidan foydalaning va formula avval butun yillarni ayiradi, so'ngra sanalar orasidagi oylar sonini hisoblaydi:

    =DATEDIF(A2, B2, "YM")

    Google Sheets-da ikki sana oʻrtasidagi yillarni hisoblang

    Sizga koʻrsatilishi kerak boʻlgan oxirgi (lekin eng muhimi) Google Sheets DATEDIF sanani qanday hisoblashi. yillardagi farq.

    Men turmush qurganlik yillarini to'y sanalari va bugungi sanaga qarab hisoblayman:

    Siz kabi allaqachon taxmin qilgan bo'lishim mumkin, men buning uchun "Y" birligidan foydalanaman:

    =DATEDIF(A2, B2, "Y")

    Bu DATEDIF formulalarining barchasi Google Sheets-da ikki sana orasidagi kunlar, oylar va yillarni hisoblashda birinchi boʻlib urinib koʻring.

    Agar ishingiz shular yordamida hal boʻlmasa yoki savollaringiz boʻlsa, ularni baham koʻrishingizni tavsiya qilaman. sharhlar bo'limida biz bilanquyida.

    Maykl Braun - dasturiy vositalardan foydalangan holda murakkab jarayonlarni soddalashtirishga ishtiyoqi bo'lgan maxsus texnologiya ishqibozi. Texnologiya sohasida o'n yildan ortiq tajribaga ega bo'lgan holda, u Microsoft Excel va Outlook, shuningdek, Google Sheets va Docs dasturlarida o'z mahoratini oshirdi. Mayklning blogi o'z bilimi va tajribasini boshqalar bilan baham ko'rishga, samaradorlik va samaradorlikni oshirish uchun amal qilish oson maslahatlar va o'quv qo'llanmalariga bag'ishlangan. Tajribali mutaxassismisiz yoki yangi boshlovchi boʻlasizmi, Mayklning blogi ushbu muhim dasturiy vositalardan maksimal darajada foydalanish uchun qimmatli tushunchalar va amaliy maslahatlarni taqdim etadi.