Tính Ngày Kết Thúc Dựa Vào Ngày Bắt Đầu

Liên hệ QC
- nếu rơi vào ngày T6 thì nó vẫn giữ nguyên, đâu cần trừ 3 làm chi đâu anh? :D
- càng không rơi vào CN vì bản thân hàm Workday.intl với đối số "0000011" em đã loại luôn T7 CN ra rồi.
- chỉ còn rơi vào T2 (vì ngày kết thúc trùng T7 nên nó loại tiếp T7 CN) thì em mới trừ 2 để cho nó lùi về ngay ngày T7 theo đúng ý như bài đầu tiên thớt nói á anh.

@bebo021999 : em chỉ suy nghĩ về công thức của bác @phuocam á, hình như đúng luôn, em chưa nghĩ ra trường hợp sai :( nếu quả thật như vậy thì em tệ quá tệ, hiiiii.

Workday = 2 thì workday-2, tức là cố định nó về thứ 7, cho dù ngày đang xét có thể là T6, T7 hay CN. Bài toán mình đặt ra (cho dù có thể thớt k hỏi) nhưng mình thử làm là trả chính xác về ngày xét.

Ví dụ cụ thể trong thực tế nhé:
Anh A ở quê lên làm hồ, nhận thầu 1 công trình với yêu cầu hoàn tất trong 57 ngày làm việc (T7 và CN không được thi công). Xong sớm nghỉ sớm, tranh thủ về quê.
Ngày bắt đầu làm việc: 30/1/2020
Dùng hàm WORKDAY, kết quả là Thứ 2, 20/4/2020.
Câu hỏi 1: Anh A phải chờ đến thứ hai 20/4/2020 mới về quê được, hay có thể về sớm hơn?
Câu hỏi 2: Tối thứ sáu, 17/4/2020 có xe người nhà về quê, anh A có theo xe về được không?

Trả lời 1: Có thể về sớm hơn, vì T7 và CN là ngày nghỉ. Nếu dựa vào kết quả "thứ 2" là không chính xác
Trả lời 2: Dùng hàm networkday để đếm số ngày giữa 30/1 và 17/4, kết quả = 57. Như vậy tối thứ sáu anh A đã hoàn thành công việc và có thể về quê.

Vấn đề đặt ra là, ngày xét là 17/4 tính từ 30/1, trả về 57 ngày LV, lấy 57 ngày LV tính từ 30/1 là về 20/4.

Còn cấu trúc = workday(ngày bắt đầu, số ngày LV-1)+1
là logic loại ngày cuối cùng ra không xét T7,CN, sau đó +1 để trả về ngày bình thường trong tuần
 
...Còn cấu trúc = workday(ngày bắt đầu, số ngày LV-1)+1
là logic loại ngày cuối cùng ra không xét T7,CN, sau đó +1 để trả về ngày bình thường trong tuần
Tôi đã cảnh cáo là sẽ có khả năng hiểu lầm.
Ví dụ có một đồ án cần 3 ngày để xong (cuối ngày thứ 3 sản phẩm hoàn thành). Bắt đầu từ thứ năm, đúng cách tính toán thì thứ hai mới xong. Làm theo kiểu thớt muốn thì sẽ ra thứ bảy. Nếu thứ bảy không có làm việc thì chẳng phải đồ án tự động mất 1 ngày?
Vì tình cảm mà để lẫn lộn số ngày công việc là quản lý vô trách nhiệm với công ty.

Việc anh A hay B nào đó hoàn tất sớm có thể về quê không phải là vấn đề của người quản lý đồ án. Nếu muốn cho phép làm sớm, người quản lý đồ án phải có hai ngày: ngày đồ án ngưng (không cần thêm gì nữa) tức thứ sáu, và ngày chính thức nhận đồ án, tức thứ hai. Trên nguyên tắc quản lý thì đồ án ấy thuộc loại 3 ngày tóm lại thành 2.
 
Tại con muốn trả về một ngày sau ngày bắt đầu một số ngày làm việc đã xác định với ngày cuối tuần tùy chỉnh á.
Tính ngày kết thúc mà bỏ qua thứ 7, CN thì cứ WORKDAY mà dùng, chừng nào có tùy biến về những ngày nghỉ khác thứ 7, CN thì mới dùng WORKDAY.INTL
 
Tính ngày kết thúc mà bỏ qua thứ 7, CN thì cứ WORKDAY mà dùng, chừng nào có tùy biến về những ngày nghỉ khác thứ 7, CN thì mới dùng WORKDAY.INTL
Định nguy hiểm chút mà sư phọ khó quá :))

1) WORKDAY(X,Y)



2) WORKDAY(X,Y,"0000011")

Mà cũng công nhận, giống như 2 cái máy giặt chạy bằng cơm, cấu tạo y chang nhau, cái nào còn ở trong thùng (chưa khui, trường hợp 1) vẫn hấp dẫn và khó đoán hơn hơn cái đã qua sử dụng (đã khui, trường hợp 2)
 
Định nguy hiểm chút mà sư phọ khó quá :))

1) WORKDAY(X,Y)



2) WORKDAY(X,Y,"0000011")

Mà cũng công nhận, giống như 2 cái máy giặt chạy bằng cơm, cấu tạo y chang nhau, cái nào còn ở trong thùng (chưa khui, trường hợp 1) vẫn hấp dẫn và khó đoán hơn hơn cái đã qua sử dụng (đã khui, trường hợp 2)

Cảm ơn bác đã nhiệt tình tư vấn, cái hàm WORDAY.INTL trên 365 đối số thứ 3 nó show hẳn luôn kiểu 1 là thứ 7, chủ nhật, 2 là chủ nhật....chứ không cần phải nhập "0000011" vào. Không biết trên các phiên bản office nó thế nào bác ạ
 
Cảm ơn bác đã nhiệt tình tư vấn, cái hàm WORDAY.INTL trên 365 đối số thứ 3 nó show hẳn luôn kiểu 1 là thứ 7, chủ nhật, 2 là chủ nhật....chứ không cần phải nhập "0000011" vào. Không biết trên các phiên bản office nó thế nào bác ạ
Để tui cho bạn xem bên Office 2016 của tui nhen:
1600328326988.png

Tui hỏi thăm bạn cái này: nếu bạn tính ngày làm việc của một Tổ hay Phòng ban nào mà trong tuần làm việc họ nghỉ T2 với T6 hoặc T3 với T5 thì bạn sẽ chọn đối số là số mấy? :)
Chuỗi 7 kí tự nhị phân thì nó biểu diễn được liền á:
nghỉ T2 với T6 => "1000100"
nghỉ T3 với T5 => "0101000"
 
Để tui cho bạn xem bên Office 2016 của tui nhen:
View attachment 245699

Tui hỏi thăm bạn cái này: nếu bạn tính ngày làm việc của một Tổ hay Phòng ban nào mà trong tuần làm việc họ nghỉ T2 với T6 hoặc T3 với T5 thì bạn sẽ chọn đối số là số mấy? :)
Chuỗi 7 kí tự nhị phân thì nó biểu diễn được liền á:
nghỉ T2 với T6 => "1000100"
nghỉ T3 với T5 => "0101000"
Em tưởng trên Office 365 nó hiển thị vậy nên hỏi xem như nào thôi chứ vào thực tế đúng trường hợp như bác thì xài như bác vậy.
 
Web KT
Back
Top Bottom