Jawaban:
Biarkan B2
sel yang berisi tanggal.
=IF(WEEKDAY(B2)=2, B2, IF(WEEKDAY(B2)=1,B2+1, B2+9-WEEKDAY(B2)))
atau
=IF(WEEKDAY(B2,3)=0, B2, B2+7-WEEKDAY(B2,3))
Solusi yang lebih elegan adalah dengan menggeser setiap input dengan jumlah hari yang tepat.
=B2+MOD(9-WEEKDAY(B2),7)
Jika Anda ingin menjadi pintar, WEEKDAY tidak diperlukan karena kami tahu bahwa zamannya jatuh pada hari Sabtu (hitung WEEKDAY (0) untuk memeriksa ini)
=B2+MOD(9-B2,7)
Solusi umum dan elegan yang bekerja untuk hari tertentu dalam seminggu (N-hari):
Sel B2
: tanggal untuk berubah ke N-hari berikutnya dalam seminggu; Sel B3
: N-hari berikutnya dalam satu minggu: Sen = 1, Sel = 2, ...;
=B2+MOD(B3-WEEKDAY(B2,2),7)
Untuk hari tertentu dalam seminggu, dalam hal ini Senin (hari = 1), rumusnya dapat 'dikodekan keras' untuk
=B2+MOD(1-WEEKDAY(B2,2),7)
Perhatikan bahwa dengan menetapkan parameter ke-2 pada hari kerja ke '2', weekday(B2,2)
ini mengembalikan hari dalam seminggu sesuai dengan hari-N yang diinginkan yang digunakan dalam rumus di atas (sel B1), yaitu Sen = 1, Sel = 2, ...
Solusi Franck sangat cocok untuk hari Senin tetapi tidak akan berhasil untuk hari-hari lainnya (saya hanya menguji rumus kedua). Namun, rumus berikut ini akan berfungsi untuk hari lain. Biarkan B2 adalah tanggal dan B3 adalah hari (B3 adalah dari 1 hingga 7 di mana hari Minggu adalah 1):
=IF(WEEKDAY(B2,1)<B3, B2+B3-WEEKDAY(B2,1), B2+B3+7-WEEKDAY(B2,1))
Catatan: Ini akan menemukan hari berikutnya bahkan jika B2 adalah hari yang diminta. Tetapi formula berikutnya akan kembali hari ini jika B2 adalah hari yang diminta:
=IF(WEEKDAY(B2,1)<=B3, B2+B3-WEEKDAY(B2,1), B2+B3+7-WEEKDAY(B2,1))