Câu trả lời:
Hãy để B2
ô chứa ngày.
=IF(WEEKDAY(B2)=2, B2, IF(WEEKDAY(B2)=1,B2+1, B2+9-WEEKDAY(B2)))
hoặc là
=IF(WEEKDAY(B2,3)=0, B2, B2+7-WEEKDAY(B2,3))
Một giải pháp thanh lịch hơn một chút là thay đổi mỗi đầu vào theo số ngày thích hợp.
=B2+MOD(9-WEEKDAY(B2),7)
Nếu bạn muốn thông minh, TUẦN không cần thiết vì chúng ta biết rằng kỷ nguyên rơi vào thứ bảy (tính TUẦN (0) để kiểm tra điều này)
=B2+MOD(9-B2,7)
Một giải pháp chung và thanh lịch hoạt động cho bất kỳ ngày nào trong tuần (N-day):
Ô B2
: ngày để thay đổi sang ngày N tiếp theo trong tuần; Ô B3
: N ngày tiếp theo trong tuần: Mon = 1, Tue = 2, ...;
=B2+MOD(B3-WEEKDAY(B2,2),7)
Đối với một ngày cụ thể trong tuần, trong trường hợp này là Thứ Hai (ngày = 1), công thức có thể được 'mã hóa cứng' thành
=B2+MOD(1-WEEKDAY(B2,2),7)
Lưu ý rằng bằng cách đặt tham số thứ 2 của ngày trong tuần thành '2', weekday(B2,2)
điều này trả về ngày trong tuần phù hợp với ngày N mong muốn được sử dụng trong công thức trên (ô B1), tức là Mon = 1, Tue = 2, ...
Giải pháp của Franck là hoàn hảo cho thứ Hai nhưng nó sẽ không hoạt động vào những ngày khác (tôi chỉ thử nghiệm công thức thứ 2). Tuy nhiên, công thức sau đây sẽ hoạt động cho những ngày khác. Đặt B2 là ngày và B3 là ngày (B3 là từ 1 đến 7 trong đó Chủ nhật là 1):
=IF(WEEKDAY(B2,1)<B3, B2+B3-WEEKDAY(B2,1), B2+B3+7-WEEKDAY(B2,1))
Lưu ý: Điều này sẽ tìm thấy vào ngày hôm sau ngay cả khi B2 là ngày được yêu cầu. Nhưng công thức tiếp theo sẽ trở lại vào hôm nay nếu B2 là ngày được yêu cầu:
=IF(WEEKDAY(B2,1)<=B3, B2+B3-WEEKDAY(B2,1), B2+B3+7-WEEKDAY(B2,1))