Yanıtlar:
Let B2
tarihi içeren hücreyi.
=IF(WEEKDAY(B2)=2, B2, IF(WEEKDAY(B2)=1,B2+1, B2+9-WEEKDAY(B2)))
veya
=IF(WEEKDAY(B2,3)=0, B2, B2+7-WEEKDAY(B2,3))
Biraz daha zarif bir çözüm, her girişi uygun gün sayısına göre kaydırmaktır.
=B2+MOD(9-WEEKDAY(B2),7)
Akıllı olmak istiyorsanız, dönemin bir Cumartesi günü düştüğünü bildiğimiz için WEEKDAY'a gerek yok (bunu kontrol etmek için WEEKDAY (0) değerini hesaplayın)
=B2+MOD(9-B2,7)
Haftanın herhangi bir günü (N-gün) için çalışan genel ve zarif bir çözüm:
Hücre B2
: haftanın bir sonraki N gününe geçilecek tarih; Hücre B3
: haftanın bir sonraki N günü: Pzt = 1, Sal = 2, ...;
=B2+MOD(B3-WEEKDAY(B2,2),7)
Haftanın belirli bir günü için, bu durumda Pazartesi (gün = 1) için, formül 'sabit kodlanabilir'
=B2+MOD(1-WEEKDAY(B2,2),7)
Haftanın 2. parametresini '2' olarak ayarlayarak, weekday(B2,2)
bu durumun yukarıdaki günü (B1 hücresi), yani Mon = 1, Sal = 2, ...
Franck'ın çözümü Pazartesi için mükemmel, ancak diğer günler için işe yaramayacak (sadece 2. formülü test ettim). Ancak, aşağıdaki formül diğer günler için geçerli olacaktır. B2 tarih olsun ve B3 gün (B3 1'den 7'ye, Pazar 1'dir):
=IF(WEEKDAY(B2,1)<B3, B2+B3-WEEKDAY(B2,1), B2+B3+7-WEEKDAY(B2,1))
Not: B2, istenen gün B2 olsa bile ertesi günü bulur. Ancak B2, istenen gün ise bir sonraki formül bugün dönecektir:
=IF(WEEKDAY(B2,1)<=B3, B2+B3-WEEKDAY(B2,1), B2+B3+7-WEEKDAY(B2,1))