Formattazione condizionale: problema data di scadenza contenente testo

samuele agnolin
  • 1 luglio 2016
  • livello: intermedio   2 minuti
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. :-)

6 Comments

You can post comments in this post.


  • 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 …

    Matteo Vascotto 9 mesi ago Reply


    • Ciao Matteo, ancora non hanno trovato una soluzione definitiva a questo problema noto.

      samuele 9 mesi ago Reply


  • 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

    Antonio Del Vecchio 8 mesi ago Reply


    • Buongiorno Antonio. Prova a dare un’occhiata a questo articolo sulla formattazione condizionale. Il tuo caso è la forma semplificata di quanto descrivo in quell’articolo. Se poi non è chiaro come applicarlo al tuo caso mandami pure una mail.

      samuele 8 mesi ago Reply


  • 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

    LisaMorelli 4 giorni ago Reply


    • 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

      samuele 3 giorni ago Reply


Inserisci un commento