Risposte:
Lascia che B2
la cella contenga la data.
=IF(WEEKDAY(B2)=2, B2, IF(WEEKDAY(B2)=1,B2+1, B2+9-WEEKDAY(B2)))
o
=IF(WEEKDAY(B2,3)=0, B2, B2+7-WEEKDAY(B2,3))
Una soluzione un po 'più elegante è quella di spostare ciascun input per il numero di giorni corretto.
=B2+MOD(9-WEEKDAY(B2),7)
Se vuoi essere intelligente, WEEKDAY non è necessario perché sappiamo che l'epoca è caduta di sabato (calcola WEEKDAY (0) per verificare questo)
=B2+MOD(9-B2,7)
Una soluzione generica ed elegante che funziona per un determinato giorno della settimana (N-day):
Cella B2
: data per passare al prossimo N-day della settimana; Cella B3
: giorno N successivo della settimana: lun = 1, mar = 2, ...;
=B2+MOD(B3-WEEKDAY(B2,2),7)
Per un giorno specifico della settimana, in questo caso lunedì (giorno = 1), la formula può essere "codificata" per
=B2+MOD(1-WEEKDAY(B2,2),7)
Si noti che impostando il secondo parametro del giorno della settimana su '2' weekday(B2,2)
questo restituisce il giorno della settimana coerente con l'N-day desiderato utilizzato nella formula sopra (cella B1), ovvero Mon = 1, Mar = 2, ...
La soluzione di Franck è perfetta per lunedì ma non funzionerà per altri giorni (ho testato solo la 2a formula). Tuttavia, la seguente formula funzionerà per altri giorni. Sia B2 la data e B3 è il giorno (B3 è da 1 a 7, dove domenica è 1):
=IF(WEEKDAY(B2,1)<B3, B2+B3-WEEKDAY(B2,1), B2+B3+7-WEEKDAY(B2,1))
Nota: questo troverà il giorno successivo anche se B2 è il giorno richiesto. Ma la formula successiva tornerà oggi se B2 è il giorno richiesto:
=IF(WEEKDAY(B2,1)<=B3, B2+B3-WEEKDAY(B2,1), B2+B3+7-WEEKDAY(B2,1))