Formattazione condizionale: problema data di scadenza contenente testo

Vogliamo colorare con la formattazione condizionale le date già scadute, quelle che sono superiori alla data odierna. Come fare se nella cella vi è il nome del prodotto oltre alla data?

Questo il punto di partenza:

data scandenza elenco iniziale

Questo il risultato da ottenere:

data scandenza risultato finale

Il problema sta nel fatto che non possiamo confrontare semplicemente la data di scadenza con la data odierna (funzione OGGI()). Dobbiamo prima estrarre la data, composta dai primi 10 caratteri, convertirla in formato numerico e poi confrontarla con OGGI().

Questi i passaggi necessari

 B  Selezioniamo le celle che vogliamo colorare

selezione celle da colorare

 B  Richiamiamo dalla scheda Home la formattazione condizionale, clicchiamo su “Nuova regola…”

nuova regola di formattazione

 C  Scegliamo l’ultima voce “utilizza una formula per determinare le celle da formattare”

utilizza una formula per determinare le celle da formattare

 D  Con il pulsante formato scegliamo il colore di riempimento da attribuire alle celle, nella regola scriviamo la seguente formula:

=SINISTRA($B3;10)*1 < OGGI() sinistra convertito in numero

La funzione SINISTRA estrae i primi 10 caratteri. Il “*1” trasforma il risultato testuale del SINISTRA in numero, confrontabile quindi con la data odierna richiamata con la funzione OGGI(). Se noi non convertissimo in numero otterremmo un risultato errato

La conversione in numero potrebbe essere fatta anche in altri modi:

=SINISTRA($B3;10)+0 < OGGI()

=–SINISTRA($B3;10) < OGGI()

Metodi descritti nell’articolo sulle conversioni da testo a numero.

Se ti è piaciuto questo articolo iscriviti alla newsletter. Riceverai così periodicamente una mail che ti avviserà rispetto ai nuovi contenuti del blog. 🙂

20 Comments

  1. Ciao,
    posso chiederti una cosa? Ho un problema nel fatto che se la base dati (che raccoglie i dati da una tabella access) aumenta/diminuisce di righe, la formattazione condizionale duplica le regola e va in tilt. Non riesco in nessun modo ad evitare che ciò accada …

  2. Buonasera egregio dott. amicoexcel,
    vorrei eseguire una formattazione condizionale ad una tabella con dei nomi e cognomi di donatori avis con le date di donazione in base alle quali vorrei che i nominativi da blu diventino rossi, trascorsi 90 o più gg dala data di ogni rispettivo donatore . Grazie

  3. Salve dott.AmicoExcel volevo chiedere un informazione sulle date di scadenza…vorrei visualizzare le per ogni mese la propria scadenza.
    Es: Scadenza 21/01/2017 Colonna Mese Scadenze Gennaio.
    Grazie Mille
    Buona Serata

  4. Salve Lisa, grazie dell’originale “dott.AmicoExcel”…
    Utilizzerei la funzione MESE, che restituisce il numero corrispondente al mese. Quindi =MESE(B2).
    Poi per visualizzare il mese in lettere può usare due sistemi:
    – la funzione TESTO =TESTO(MESE(B2);”mmmm”)
    – formato cella, formato “Personalizzato” e mmmm nel formato

  5. Buongiorno,

    se ho già la data in formato numerico es (10/03/2020, e TIPO() mi restituisce 1) e voglio evidenziare le righe che alla colonna D hanno la data precedente a quella di oggi (cioè scadute) come posso fare? e se volessi evidenziare di rosse quelle scadute e di arancione quelle che stanno per scadere (ad esempio entro 7 giorni)

    grazie e buona giornata

  6. Ciao Samuele,avrei bisogno del tuo aiuto riguardo la colorazione di una cella e precisamente: se nella cella A1 ho la formula oggi() e nella colonna B le date di nascita delle persone è possibile far colorare le celle della colonna B quando il giorno e il mese corrispondono alla data di oggi?
    Grazie.

  7. Ciao Angelo.
    Potresti utilizzare la funzione E all’interno della formattazione condizionale.
    Tipo =E(Mese(oggi())=Mese($B2);Giorno(oggi())=Giorno($B2)).

    Come riferimento, se credi, leggi https://www.amicoexcel.it/funzione-e/
    il paragrafo “Funzione E e formattazione condizionale”

  8. Ciao Samuele,intanto grazie per avermi risposto. Ho inserito la formula che mi hai suggerito,prima nel foglio dove mi restituisce come valore VERO o FALSO a seconda se la data combacia con il giorno e il mese, e poi nella formattazione condizionale mi colora la cella B2. Funziona. Se avrò ancora bisogno del tuo aiuto posso contattarti? Grazie.

  9. salve sig.amico excel io ho bisogno del suo aiuto io utilizzo un programma di excel in cui ci sono 8 riferimenti a date con scandenze per caso esiste una formula che possa aiutarmi ? se si eventualmente invio il foglio cosi le spiego meglio grazie cordiali saluti

  10. Buon giorno Samuele, ho due colonne con riportate le date di inizio e fine assicurazioni; vorrei evidenziare solo le date con scadenza dopo il 31/12/2019, come dovrei fare? Grazie in anticipo.

  11. Ciao Silvia.

    Farei così: Formattazione condizionale / Regole evidenziazione celle / Maggiore di… ed inserirei la data 31/12/2019

  12. Buon Giorno , se volessi invece farle colorare in modo diverso gradualmeente e cioè man mano che si avvicina la scadenza passare prima dal verde poi giallo arnacione e rosso ? come si puo’ fare ?

  13. Buonasera Alessandro… si potrebbero creare 3 diverse regole… sottraendo in ciascuna un numero prestabilito di giorni ad OGGI()… direttamente nell’espressione della formattazione condizionale

  14. Buongiorno, se volessi evidenziare l’avvicinarsi di una scadenza quinquennale come posso fare?
    Ho utilizzato questa formula =(DATA.MESE(D4;12*5))-OGGI()>20 in cui la cella dovrebbe diventare rossa nel momento in cui mancano 5 giorni alla scadenza; mentre con quest’altra formula E((DATA.MESE($D4;12*5))-OGGI()5) la cella dovrebbe diventare gialla se la data di scadenza è tra i 5-20 giorni; ma non funzionano.
    Mi puoi aiutare?
    Grazie mille

  15. Buongiorno Veronica.
    Avrai risolto scrivendo nella formula della formattazione condizionale =D4=OGGI()-5 per colorare quando mancano 5 giorni, oppure =E(D4>=OGGI()-5;D4=OGGI()-20;D4<=OGGI())-5) per data tra 5 e 20

Comments are closed.