Cách tính số ngày công, ngày nghỉ, ngày làm việc trong Excel

Hôm nay, chúng ta cùng tìm hiểu về câu chuyện cổ tích sau nhé:

Ngày xửa ngày xưa, giữa mùa đông tuyết rơi trắng như bông, một bà hoàng hậu ngồi khâu bên cửa sổ. Bà mải nhìn tuyết nên kim đâm phải tay, ba giọt máu rơi xuống tuyết. Thấy máu đỏ với tuyết trắng thành một màu tuyệt đẹp, bà nghĩ bụng:“Ước gì ta sinh được một người con gái, da trắng như tuyết, môi đỏ như máu,tóc đen như gỗ khung cửa này.

Sau đó ít lâu, bà sinh được một người con gái như mong ước; vì vậy bà đặt tên con là WORKDAYWORKDAY vừa ra đời thì mẹ chết. Một năm sau, vua đi lấy vợ khác. Bà HOLIDAYS đẹp lắm nhưng kiêu căng tự phụ, không muốn ai đẹp bằng mình. Bà có một cái gương thần, mỗi khi soi, bà hỏi:

Gương kia ngự ở trên tường,
Nước ta ai đẹp được dường như ta?

Thì gương đáp: – Tâu lệnh bà, bà là người đẹp nhất nước ạ.

Biết gương nói thật, bà rất sung sướng. Nhưng WORKDAY.INTL càng lớn càng đẹp. Cô đẹp như tiên sa, đẹp hơn cả hoàng hậu. Một hôm hoàng hậu lại hỏi gương, thì gương đáp:

Xưa kia bà đẹp nhất trần,
Ngày nay WORKDAY.INTL muôn phần đẹp hơn.

Hoàng hậu nghe nói giật mình, ghen tức tái mặt đi. Ngày một thêm kiêu ngạo và đố kỵ. Mụ cho gọi một người đi săn để sai bảo, đưa nàng WORKDAY.INTL vào rừng và sát hại. Người thợ săn vâng lệnh, đem cô bé đi. Khi bác lấy dao ra để giết thì cô bé vô tội van khóc: “Bác ơi, bác đừng giết cháu, cháu xin ở lại trong rừng không về nhà nữa”.

Bác thợ săn xót thương nên thả nàng đi, cô cắm đầu chạy, giẫm phải gai và đá nhọn, chảy cả máu chân. Thú dữ lượn quanh cô, nhưng không đụng chạm đến cô. Cô đi mỏi cả chân, chập tối, thấy một cái nhà nhỏ, liền vào để nghỉ.

Trong nhà, cái gì cũng bé tí ti, nhưng đẹp và sạch lắm. Trên bàn trải khăn trắng tinh có bảy cái đĩa con. Sát tường kê bảy chiếc giường nhỏ phủ khăn trắng như tuyết. Cô mệt quá, muốn đi ngủ, nhưng không có giường nào nằm vừa, cái thì dài quá, cái lại ngắn quá. Cô thử đến cái thứ bảy mới thấy vừa, liền vào đó ngủ.

Tối mịt, các người chủ căn nhà mới về. Đó là bảy chú lùn weekend làm công việc đào mỏ. Họ bỗng cảm thấy hình như có ai đã đến nhà, vì thấy nó khang khác, rồi phát hiện ra một cô gái xinh đẹp ngủ say trên những chiếc giường bé tí của họ. WORKDAY.INTL chợt tỉnh giấc và kể về câu chuyện của nàng cho họ nghe. Từ đó WORKDAY.INTL ở với các chú lùn. Cô làm công việc nội trợ. Sáng sớm, các chú lùn vào mỏ lấy quặng và vàng cho đến chiều tối. WORKDAY.INTL làm thức ăn sẵn để cho họ về ăn.

Như thường lệ, mụ hoàng hậu HOLIDAYS ác độc cứ nghĩ đã hạ được WORKDAY.INTL, bà liền hỏi gương:

Gương kia ngự ở trên tường,
Nước ta ai đẹp được dường như ta?

Gương đáp:

Xưa kia bà đẹp nhất trần,
Ngày nay WORKDAY.INTL muôn phần đẹp hơn.
Nàng ta ở khuất núi non,
Tại nhà của bảy chú lùn weekend.

Đó là câu chuyện kể về sự ra đời của hàm WORKDAY.INTL theo cổ tích xưa. Bạn nhận ra điều gì? WORKDAY.INTL là ai? Có phải là nàng Bạch Tuyết đã hóa thân vào trong Excel cho bạn áp dụng mỗi ngày.

  • WORKDAY.INTL là gì?

Cú pháp

WORKDAY.INTL(start_date, days, [weekend], [holidays])

Cú pháp hàm WORKDAY.INTL có các đối số sau đây:

  1. Start_date:    Bắt buộc. Ngày bắt đầu, được cắt cụt để trở thành số nguyên.
  2. Days:    Bắt buộc. Số ngày làm việc trước hoặc sau start_date. Giá trị dương cho kết quả là một ngày trong tương lai; giá trị âm cho kết quả là một ngày trong quá khứ; giá trị 0 cho kết quả là start_date. Day-offset sẽ được cắt cụt để trở thành một số nguyên.
  3. Weekend:  Tùy chọn. Cho biết những ngày nào trong tuần là ngày cuối tuần và không được coi là ngày làm việc. Weekend là một số của ngày cuối tuần hoặc một chuỗi chỉ rõ khi nào thì diễn ra ngày cuối tuần. Các giá trị chuỗi ngày cuối tuần dài bảy ký tự và mỗi một ký tự trong chuỗi biểu thị một ngày trong tuần, bắt đầu từ thứ hai.
    1 thể hiện là ngày nghỉ.
    0 thể hiện là ngày làm việc.
    Chỉ những ký tự 1 và 0 được sử dụng trong chuỗi. 1111111 là một chuỗi không hợp lệ.

    Ví dụ, 0000011″ sẽ có kết quả là ngày cuối tuần là Thứ bảy và Chủ nhật.

  4. Holidays:    Tùy chọn. Một tập hợp tùy chọn gồm một hoặc nhiều ngày cần được trừ khỏi lịch ngày làm việc. Holidays sẽ là một phạm vi ô chứa ngày hoặc một hằng số mảng gồm các giá trị sê-ri biểu thị các ngày đó. Có thể tùy ý sắp xếp thứ tự của ngày hoặc các giá trị sê-ri trong đối số holidays.
  • Vậy liên quan gì đến câu chuyện cổ tích, tào lao quá à nghen?

Chúng ta có [1] start_date (ngày được sinh ra), [2] days (số ngày ở cùng 7 chú lùn), [3] weekend (7 chú lùn với các giá trị tham chiếu 1 và 0), và [4] holidays (danh sách ngày nghỉ do mụ phù thủy tìm tới hạ độc).

Cứ cho là vậy đi, rồi xem làm được gì? 7 chú lùn weekend ra làm sao? Mụ phù thủy holidays đã làm gì? Rồi chừng nào hoàng tử NETWORKDAYS.INTL đến, và đã làm gì?

  • Cách tính số ngày thông thường, lấy ngày bắt đầu + số ngày, sẽ ra được ngày kết thúc.

Ví dụ: ô A2 có giá trị là ngày “10/02/2018”, cộng tới 7 ngày nữa, thì sẽ là: 17/02/2018.

  • Khi WORKDAY còn đang đi học, thì mặc định được nghỉ T7, CN rồi, và danh sách ngày nghỉ lễ nếu có.

Cũng là ngày “10/02/2018”, cộng thêm 7 ngày, và thứ 7 + CN nghỉ, thì kết quả sẽ là: 20/02/2018. Nếu tính ngày nghỉ lễ sẽ là: “01/03/2018”.

  • Khi WORKDAY lớn lên trở thành WORKDAY.INTL sẽ có số ngày nghỉ trong tuần khi làm việc.

Cũng là ngày “10/02/2018”, cộng thêm 7 ngày, nhưng chỉ đi làm 2-4-6, còn lại nghỉ, lễ lạc không quan tâm, thì kết quả sẽ trả về là: “26/02/2018”.

Và, tính luôn ngày nghỉ lễ lạc, thì dịp đó, lại rơi vào đợt nghỉ Tết Nguyên Đán, cuối cùng thì kết quả sẽ là: “07/03/2018”.

Bạn có thắc mắc “0101011” nghĩa là như thế nào ko? Đó là tuần tự 7 ngày trong tuần từ T2 tới CN. Với weekend, 1 có nghĩa là được nghỉ, và 0 nghĩa là ngày làm việc, sẽ tính ngày.

Vẫn chưa thấy ứng dụng cho việc gì? Khi nào thì dùng tới nó? Dưới đây là một ví dụ, khi chúng ta có ngày nhập học, và số giờ học/buổi, cùng lịch học.

Rồi, thì NETWORKDAYS.INTL làm gì? NETWORKDAYS.INTL(ngày bắt đầu, ngày kết thúc, weekend, holidays) sẽ trả về kết quả là số ngày tương ứng giữa 2 ngày trên. Và làm thế nào để tính có bao nhiêu ngày thứ 7 trong tuần, trừ ngày nghỉ lễ? Bạn sẽ áp dụng công thức nào?

Ứng dụng dùng để làm gì? Bạn có đơn đặt hàng, và ngày hoàn thành sản phẩm, cùng lịch giao hàng, bạn cần kiểm tra xem danh sách đơn hàng đó có nằm trong lịch giao hàng hay không? Đây là câu hỏi mình nhận được trên mạng, và giải pháp cho nó, thông qua hàm NETWORKDAYS.INTL

  • LỜI KẾT:

Bạn hoàn toàn có thể tính ra số ngày công trong tháng với công thức NETWORKDAYS.INTL với áp dụng cụ thể theo lịch làm việc có nghỉ thứ 7 hay không? Hay chỉ làm nửa ngày. Rất đơn giản rồi phải không?

Như bạn đã thấy, phần WEEKEND cũng rất hữu dụng trong các ứng dụng khác nhau. Mặc định tham chiếu sẽ được Excel gợi ý, nhưng tìm đến ngôi nhà của 7 chú lùn thì phải đi qua bảy ngọn núi xa. Hãy như Bạch Tuyết, và đừng ăn táo độc của mụ phù thủy.

Nếu có thắc mắc, đừng ngại ngùng khi hỏi, bạn sẽ luôn tìm thấy giải pháp tối ưu nhất cho câu hỏi của mình.