Đánh giá lequocthai.com:
Công thức này có nhiều trường hợp sử dụng khác nhau. Ví dụ, một doanh nghiệp bán buôn đã cam kết giao hàng cho các nhà bán lẻ trong vòng 10 ngày làm việc. Thay vì phải theo dõi các đơn hàng quá hạn một cách thủ công, người bán buôn có thể dùng hàm WORKDAY để nhanh chóng xác định những đơn hàng đã quá hạn.

Cú pháp
Cú pháp của hàm WORKDAY như sau:
=WORKDAY(start_date, days, [holidays])
Các đối số:
- start_date – Đối số bắt buộc, nhập ngày hoặc tham chiếu tới ô chứa ngày, là ngày bắt đầu tính.
- days – Đối số bắt buộc, nhập số ngày làm việc cần cộng hoặc trừ vào start_date.
- holidays – Đối số tùy chọn, cho phép chỉ định một mảng các ngày lễ cần loại trừ khỏi ngày làm việc. Các ngày này có thể được cung cấp dưới dạng một vùng ô hoặc một mảng các số sê‑ri.
Đặc điểm quan trọng của hàm WORKDAY
- Nếu các đối số start_date và days gây ra một ngày không hợp lệ, hàm sẽ trả về lỗi #NUM.
- Nếu giá trị trong đối số days không phải là số nguyên, hàm sẽ bỏ phần thập phân (truncate) và chỉ lấy phần nguyên.
- Nếu giá trị trong start_date hoặc [holidays] không hợp lệ, hoặc giá trị trong days không phải là số, hàm sẽ trả về lỗi #VALUE.
Ví dụ về hàm WORKDAY
Hãy xem một số ví dụ để hiểu chi tiết hàm WORKDAY.
Ví dụ 1 – Công thức cơ bản cho hàm WORKDAY
Tính 15 ngày làm việc sau một ngày cho trước. Lúc này chúng ta chưa sử dụng đối số holidays. Công thức sẽ là:
=WORKDAY(A2, 15)

Trong ví dụ này, chúng ta tính 15 ngày làm việc sau ngày 25‑12‑2001 và hàm trả về ngày 15‑01‑2002. Nếu đổi giá trị days thành số âm để tính ngược lại 15 ngày làm việc, kết quả sẽ là 04‑12‑2001.
Ví dụ 2 – Thêm đối số holidays vào công thức
Trong ví dụ trước, hàm trả về 15‑01‑2002. Liệu đây có thực sự là 15 ngày làm việc sau ngày nhập vào không? Tất nhiên là không, vì trong khoảng thời gian này có một số ngày lễ. Để tính chính xác, hãy tạo một danh sách các ngày lễ trong tháng 12‑2001 và tháng 1‑2002, rồi dùng công thức:
=WORKDAY(A2, 15, E2:E4)

Kết quả bây giờ là 17‑01‑2002, vì có hai ngày lễ (31‑12 và 01‑01) nằm trong khoảng thời gian tính.
Lưu ý: Ngày 25‑12‑2001 cũng là ngày lễ, nhưng việc đưa start_date vào danh sách ngày lễ là không cần thiết. Hàm bắt đầu tính từ ngày kế tiếp và start_date chỉ dùng làm điểm xuất phát.
Ví dụ 3 – Xác định một ngày có phải là ngày làm việc hay không
Giả sử bạn muốn biết một ngày có phải là ngày làm việc hay không. Thay vì lục lọi lịch, bạn có thể dùng hàm WORKDAY như sau:
=WORKDAY(A2-1,1,$E$2:$E$4) = A2

Giải thích công thức: Hàm WORKDAY không bao giờ trả về ngày cuối tuần hoặc ngày lễ. Đầu tiên, chúng ta trừ 1 ngày khỏi start_date, sau đó cộng 1 ngày làm việc qua đối số days. Điều này đưa chúng ta trở lại cùng một ngày. Nếu chúng ta chỉ dùng `=WORKDAY(A2,0,$E$2:$E$4) = A2` thì sẽ không hoạt động vì hàm cần một giá trị bù để thực hiện tính toán.
Tiếp theo, chúng ta cung cấp danh sách ngày lễ (ở ví dụ này, 25‑12‑2001 là start_date và cũng là ngày lễ). Do đó hàm WORKDAY sẽ trả về 26‑12‑2001. Cuối cùng, so sánh ngày trả về với ngày trong ô A2: nếu bằng nhau, công thức trả về TRUE (ngày đó là ngày làm việc); nếu không, trả về FALSE (ngày đó là cuối tuần).
WORKDAY vs. WORKDAY.INTL
`WORKDAY.INTL` là phiên bản mở rộng của `WORKDAY`. Điểm khác biệt duy nhất là `WORKDAY.INTL` cho phép thêm một đối số tùy chỉnh ngày cuối tuần. Cú pháp:
=WORKDAY.INTL(start_date, days, [weekend], [holidays])
So với cú pháp của `WORKDAY`, chỉ có thêm đối số [weekend].
Mặc định, cả hai hàm đều coi Thứ Bảy và Chủ Nhật là ngày cuối tuần. Tuy nhiên, bạn có thể xác định ngày cuối tuần tùy ý trong `WORKDAY.INTL` bằng các mã sau:
| Mã ngày cuối tuần | Ngày cuối tuần |
|---|---|
| 1 (mặc định) | 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 |
| 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 |
Ví dụ 4 – Sử dụng WORKDAY.INTL với ngày cuối tuần tùy chỉnh
Giả sử trung tâm thực hiện đơn hàng của chúng ta có ngày nghỉ cuối tuần là hai ngày liên tiếp: Thứ Tư và Thứ Năm. Để tính lại ngày giao hàng dựa trên lịch nghỉ mới, chúng ta dùng công thức:
=WORKDAY.INTL(A2,30,5)

Trong đó, `5` là mã đại diện cho ngày cuối tuần Thứ Tư‑Thứ Năm. Kết quả cho thấy một số ngày được dịch sang ngày trước hoặc ngày sau tùy theo ngày nghỉ.
WORKDAY.INTL – Định dạng ngày cuối tuần bằng chuỗi ký tự
Nếu công ty muốn nghỉ vào Thứ Hai và Thứ Sáu, chúng ta có thể dùng chuỗi 7 ký tự để mô tả ngày làm việc (0) và ngày nghỉ (1). Ký tự đầu tiên đại diện cho Thứ Hai, ký tự cuối cùng đại diện cho Chủ Nhật.
=WORKDAY.INTL(A2,30,"1000100")

Chuỗi `”1000100″` có nghĩa là Thứ Hai và Thứ Sáu là ngày nghỉ, các ngày còn lại là ngày làm việc. Nhờ cách này, bạn có thể thiết lập tới ba ngày nghỉ không liên tiếp – điều mà các mã chuẩn không hỗ trợ.
Kết luận
Đó là toàn bộ thông tin về hàm WORKDAY. Hãy thử nghiệm các công thức này, thay đổi tham số và quan sát kết quả để nắm vững cách hoạt động. Khi bạn đã thành thạo, chúng tôi sẽ quay lại với một hàm mới giúp công việc của bạn trở nên dễ dàng hơn.







