DATEDIF và NETWORKDAYS trong Google Trang tính: chênh lệch ngày, tháng và năm

  • Chia Sẻ Cái Này
Michael Brown

Bài đăng trên blog hôm nay là về việc tìm ra sự khác biệt giữa hai ngày trong Google Trang tính. Bạn sẽ thấy rất nhiều công thức DATEDIF để đếm ngày, tháng và năm, đồng thời tìm hiểu cách NETWORKDAYS được sử dụng để chỉ đếm ngày làm việc ngay cả khi ngày nghỉ của bạn dựa trên lịch biểu tùy chỉnh.

Người dùng tìm thấy rất nhiều bảng tính ngày khó hiểu, nếu không muốn nói là cực kỳ khó xử lý. Nhưng tin hay không thì tùy, có một số chức năng tiện dụng và đơn giản cho mục đích đó. DATEDIF và NETWORKDAYS là một trong số đó.

    Hàm DATEDIF trong Google Trang tính

    Khi xảy ra với các hàm, tên của chúng gợi ý hành động. Điều tương tự cũng xảy ra với DATEDIF. Nó phải được đọc là date dif , không phải dateif , và nó là viết tắt của date Difference . Do đó, DATEDIF trong Google Trang tính tính toán chênh lệch ngày giữa hai ngày.

    Hãy chia nhỏ nó thành từng phần. Hàm yêu cầu ba đối số:

    =DATEDIF(ngày_bắt đầu, ngày_kết thúc, đơn vị)
    • ngày_bắt đầu – một ngày được sử dụng làm điểm bắt đầu. Nó phải là một trong những điều sau:
      • chính ngày tháng nằm trong dấu ngoặc kép: "8/13/2020"
      • tham chiếu đến một ô có ngày: A2
      • công thức trả về ngày: DATE(2020, 8, 13)
      • một số đại diện cho một ngày cụ thể và có thể được Google Sheets hiểu là ngày, ví dụ: 44056 đại diện cho Ngày 13 tháng 8 năm 2020 .
    • end_date – một ngày được sử dụngnhư một điểm cuối. Nó phải có cùng định dạng với start_date .
    • unit – được dùng để báo cho hàm biết cần trả về sự khác biệt nào. Dưới đây là danh sách đầy đủ các đơn vị bạn có thể sử dụng:
      • "D" – (viết tắt của days ) trả về số ngày giữa hai ngày.
      • "M" – (tháng) số tháng đầy đủ giữa hai ngày.
      • "Y" – (năm) số năm đầy đủ.
      • "MD" – (ngày bỏ qua tháng) số ngày sau khi trừ đi cả tháng.
      • "YD" – (ngày bỏ qua năm) số ngày sau khi trừ đi cả năm.
      • "YM" – (tháng bỏ qua năm) số tháng đầy đủ sau khi trừ đi cả năm.

    Lưu ý. Tất cả các đơn vị phải được đưa vào công thức giống như cách chúng xuất hiện ở trên – trong dấu ngoặc kép.

    Bây giờ, hãy ghép tất cả các phần này lại với nhau và xem cách thức hoạt động của công thức DATEDIF trong Google Trang tính.

    Tính số ngày giữa hai ngày trong Google Trang tính

    Ví dụ 1. Đếm tất cả các ngày

    Tôi có một bảng nhỏ để theo dõi một số đơn hàng. Tất cả chúng đã được vận chuyển vào nửa đầu tháng 8 – Ngày vận chuyển – sẽ là ngày bắt đầu của tôi. Ngoài ra còn có một ngày giao hàng gần đúng – Ngày đến hạn .

    Tôi sẽ tính số ngày – "D" – giữa vận chuyển và ngày đến hạn để xem mất bao lâu để các mặt hàng đến nơi. Đây là công thức tôi nên sử dụng:

    =DATEDIF(B2, C2, "D")

    Tôi nhậpDATEDIF vào D2 rồi sao chép xuống cột để áp dụng cho các hàng khác.

    Mẹo. Bạn luôn có thể tính toán toàn bộ cột cùng một lúc bằng một công thức duy nhất sử dụng ARRAYFORMULA:

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

    Ví dụ 2. Đếm ngày bỏ qua tháng

    Hãy tưởng tượng ở đó là một vài tháng giữa hai ngày:

    Làm thế nào để bạn chỉ tính các ngày như thể chúng thuộc cùng một tháng? Đúng vậy: bằng cách bỏ qua những tháng đầy đủ đã trôi qua. DATEDIF tự động tính toán giá trị này khi bạn sử dụng đơn vị "MD" :

    =DATEDIF(A2, B2, "MD")

    Hàm trừ các tháng đã trôi qua và đếm số ngày còn lại .

    Ví dụ 3. Đếm ngày bỏ qua năm

    Một đơn vị khác – "YD" – sẽ hỗ trợ khi các ngày cách nhau hơn một năm:

    =DATEDIF(A2, B2, "YD")

    Công thức sẽ trừ các năm trước, sau đó tính các ngày còn lại như thể chúng thuộc cùng một năm.

    Đếm số ngày làm việc trong Google Trang tính

    Có trường hợp đặc biệt khi bạn chỉ cần tính số ngày làm việc trong Google Trang tính. Các công thức DATEDIF sẽ không giúp được gì nhiều ở đây. Và tôi tin rằng bạn sẽ đồng ý rằng việc trừ các ngày cuối tuần theo cách thủ công không phải là tùy chọn hay nhất.

    May mắn thay, Google Trang tính có một vài phép thuật không quá kỳ diệu cho điều đó :)

    Ví dụ 1. Hàm NETWORKDAYS

    Hàm đầu tiên được gọi là NETWORKDAYS. Hàm này tính toán số ngày làm việc giữa hai ngày không kể ngày cuối tuần (thứ bảy vàChủ nhật) và thậm chí cả ngày lễ nếu cần:

    =NETWORKDAYS(ngày_bắt_đầu, ngày_kết_thúc, [ngày_lễ])
    • ngày_bắt_đầu – ngày được sử dụng làm điểm bắt đầu. Yêu cầu.

      Lưu ý. Nếu ngày này không phải là ngày nghỉ thì được tính là ngày làm việc.

    • end_date – ngày được sử dụng làm điểm cuối. Yêu cầu.

      Lưu ý. Nếu ngày này không phải là ngày nghỉ thì được tính là ngày làm việc.

    • ngày lễ – đây là tùy chọn khi bạn cần chỉ ra các ngày lễ cụ thể. Nó phải là một phạm vi ngày hoặc số đại diện cho ngày.

    Để minh họa cách thức hoạt động của nó, tôi sẽ thêm một danh sách các ngày lễ diễn ra giữa ngày giao hàng và ngày đáo hạn:

    Vì vậy, cột B là ngày bắt đầu của tôi, cột C – ngày kết thúc. Ngày trong cột E là những ngày nghỉ để xem xét. Đây là giao diện của công thức:

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

    Mẹo. Nếu bạn định sao chép công thức sang các ô khác, hãy sử dụng tham chiếu ô tuyệt đối cho các ngày lễ để tránh lỗi hoặc kết quả không chính xác. Hoặc xem xét việc xây dựng một công thức mảng thay thế.

    Bạn có nhận thấy số ngày giảm như thế nào so với công thức DATEDIF không? Vì hiện tại hàm đã tự động trừ tất cả các ngày thứ 7, chủ nhật và 2 ngày lễ diễn ra vào thứ 6 và thứ 2.

    Lưu ý. Không giống như DATEDIF trong Google Trang tính, NETWORKDAYS tính start_day end_day là ngày làm việc trừ khi đó là ngày lễ. Do đó, D7 trả về 1 .

    Ví dụ 2.NETWORKDAYS.INTL dành cho Google Trang tính

    Nếu có lịch biểu cuối tuần tùy chỉnh, bạn sẽ được hưởng lợi từ một chức năng khác: NETWORKDAYS.INTL. Nó cho phép bạn đếm số ngày làm việc trong Google Trang tính dựa trên các ngày cuối tuần do cá nhân đặt:

    =NETWORKDAYS.INTL(start_date, end_date, [weekend], [holidays])
    • start_date – a ngày được sử dụng làm điểm bắt đầu. Bắt buộc.
    • end_date – ngày được sử dụng làm điểm cuối. Yêu cầu.

      Lưu ý. NETWORKDAYS.INTL trong Google Trang tính cũng tính start_day end_day là ngày làm việc trừ khi chúng là ngày lễ.

    • cuối tuần – ngày này là không bắt buộc. Nếu bỏ qua thì thứ bảy và chủ nhật được coi là ngày nghỉ cuối tuần. Nhưng bạn có thể thay đổi điều đó bằng hai cách:
      • Mặt nạ .

        Mẹo. Cách này rất phù hợp khi ngày nghỉ của bạn rải rác trong tuần.

        Mặt nạ là mẫu có bảy chữ số gồm 1 và 0. 1 là viết tắt của một ngày cuối tuần, 0 cho một ngày làm việc. Chữ số đầu tiên trong mẫu luôn là Thứ Hai, chữ số cuối cùng là Chủ nhật.

        Ví dụ: "1100110" nghĩa là bạn làm việc vào Thứ Tư, Thứ Năm, Thứ Sáu và Thứ Bảy.

        Lưu ý. Mặt nạ phải được đặt trong dấu ngoặc kép.

      • Số .

        Sử dụng các số có một chữ số (1-7) biểu thị một cặp ngày cuối tuần đã đặt:

        Số Cuối tuần
        1 Thứ bảy, Chủ nhật
        2 Chủ nhật, Thứ hai
        3 Thứ Hai, Thứ Ba
        4 Thứ Ba,Thứ Tư
        5 Thứ Tư, Thứ Năm
        6 Thứ Năm, Thứ Sáu
        7 Thứ sáu, thứ bảy

        Hoặc làm việc với các số có hai chữ số (11-17) biểu thị một ngày để nghỉ ngơi trong vòng một tuần:

        Số Ngày cuối tuần
        11 Chủ nhật
        12 Thứ Hai
        13 Thứ Ba
        14 Thứ tư
        15 Thứ năm
        16 Thứ sáu
        17 Thứ bảy
    • ngày lễ – nó cũng là tùy chọn và được sử dụng để chỉ định ngày lễ.

    Hàm này có vẻ phức tạp vì tất cả những con số đó, nhưng tôi khuyên bạn nên dùng thử.

    Đầu tiên, chỉ cần hiểu rõ về ngày nghỉ của bạn. Hãy thực hiện Chủ Nhật Thứ Hai . Sau đó, quyết định cách biểu thị những ngày cuối tuần của bạn.

    Nếu bạn đeo khẩu trang, nó sẽ như thế này – 1000001 :

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

    Nhưng vì tôi có hai ngày cuối tuần liên tiếp nên tôi có thể sử dụng một số từ các bảng ở trên, 2 trong trường hợp của tôi:

    =NETWORKDAYS.INTL(B2, C2, 2)

    Sau đó, chỉ cần thêm đối số cuối cùng – tham khảo các ngày lễ trong cột E và công thức đã sẵn sàng:

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

    Google Trang tính và chênh lệch ngày tháng

    Đôi khi tháng quan trọng hơn ngày. Nếu điều này đúng với bạn và bạn muốn nhận chênh lệch ngày theo tháng hơn là theo ngày, hãy để Google Trang tínhDATEDIF thực hiện công việc.

    Ví dụ 1. Số tháng đầy đủ giữa hai ngày

    Bài tập giống nhau: start_date đi trước, tiếp theo là end_date "M" – viết tắt của tháng – làm đối số cuối cùng:

    =DATEDIF(A2, B2, "M")

    Mẹo. Đừng quên hàm ARRAUFORMULA có thể giúp bạn đếm tháng trên tất cả các hàng cùng một lúc:

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

    Ví dụ 2. Số tháng bỏ qua năm

    Bạn có thể không cần đếm số tháng trong tất cả các năm ở giữa ngày bắt đầu và ngày kết thúc. Và DATEDIF cho phép bạn làm điều đó.

    Chỉ cần sử dụng đơn vị "YM" và công thức sẽ trừ đi cả năm trước, sau đó đếm số tháng giữa các ngày:

    =DATEDIF(A2, B2, "YM")

    Tính năm giữa hai ngày trong Google Trang tính

    Điều cuối cùng (nhưng không kém phần quan trọng) muốn cho bạn thấy là cách Google Trang tính DATEDIF tính ngày chênh lệch về số năm.

    Tôi sẽ tính số năm mà các cặp đôi đã kết hôn dựa trên ngày cưới của họ và ngày hôm nay:

    Như bạn có thể đã đoán được, tôi sẽ sử dụng đơn vị "Y" cho điều đó:

    =DATEDIF(A2, B2, "Y")

    Tất cả các công thức DATEDIF này là lần đầu tiên thử khi tính ngày, tháng và năm giữa hai ngày trong Google Trang tính.

    Nếu trường hợp của bạn không giải quyết được bằng những cách này hoặc nếu bạn có bất kỳ câu hỏi nào, tôi khuyến khích bạn chia sẻ chúng với chúng tôi trong phần bình luậnbên dưới.

    Michael Brown là một người đam mê công nghệ chuyên dụng với niềm đam mê đơn giản hóa các quy trình phức tạp bằng các công cụ phần mềm. Với hơn một thập kỷ kinh nghiệm trong ngành công nghệ, anh ấy đã trau dồi kỹ năng của mình trong Microsoft Excel và Outlook, cũng như Google Trang tính và Tài liệu. Blog của Michael dành để chia sẻ kiến ​​thức và chuyên môn của anh ấy với những người khác, cung cấp các mẹo và hướng dẫn dễ thực hiện để cải thiện năng suất và hiệu quả. Cho dù bạn là một chuyên gia dày dạn kinh nghiệm hay người mới bắt đầu, blog của Michael đều cung cấp những hiểu biết có giá trị và lời khuyên thiết thực để tận dụng tối đa những công cụ phần mềm thiết yếu này.