Creare un calendario con Excel

Vediamo passo dopo passo come creare con Excel un calendario personalizzato.

Apriamo Excel e, pensando ad un calendario mensile, ci verrebbe spontaneo di inserire i numeri da 1 fino a 31 nelle celle di una colonna. No, non è questo l'approccio migliore.

Inseriamo invece in una cella del nostro foglio di lavoro (per questo esempio ho utilizzato la cella B2) l'anno per cui vogliamo creare il nostro calendario (ad esempio: 2009). Inseriamo poi in un'altra cella dello stesso foglio di lavoro (ad esempio nella cella D2) un valore numerico (compreso tra 1 e 12) con il quale identificheremo il mese che vogliamo rappresentare.

Nell'esempio mostrato in Figura 1 ho inserito 2009 nella cella B2 e il valore 1 nella cella D2 perchè voglio creare il calendario del mese di Gennario dell'anno 2009.

Creare un calendario con Excel
Figura 1

Posizioniamoci a questo punto sulla cella C5 e inseriamo la funzione di Excel DATA().

La funzione DATA() accetta 3 parametri (se li scrivete a "mano" ricordatevi il separatore rappresentato dal segno ; punto e virgola): l'Anno, il Mese e il Giorno a cui si riferisce la data che stiamo calcolando.

Calendario con Excel
Figura 2

Nel nostro caso l'Anno lo abbiamo nella cella B2, il Mese lo troviamo nella cella D2 e il Giorno dobbiamo passarlo manualmente impostandolo ad 1 (il primo giorno del mese).

La formula completa sarà pertanto: =DATA(B2;D2;1)

Come risultato della funzione appena inserita vedremo nella cella C5 la data "01/01/2009".

Procediamo con gli altri giorni del mese. Posizioniamoci sulla cella C6 e inseriamo la formula: =C5+1

In pratica, stiamo aggiungendo un giorno alla data indicata nella cella C5. Come risultato avremo che nella cella C6 comparirà la data "02/01/2009".

A questo punto eseguiamo il completamento automatico delle celle sottostanti, ricopiando la formula inserita nella cella C6 fino ad ottenere tutte le date del mese.

Calendario perpetuo
Figura 3

Adesso però vorremmo che nelle celle appena impostate comparisse solo il valore del giorno e non la data intera.

Selezionamo allora le celle da C5 a C35 e andiamo al menu Formato e selezioniamo la voce Celle.

La finestra di dialogo che compare adesso mostrerà alcune schede con cui possiamo impostare il formato delle nostra cella (o delle nostre celle). Lavoriamo sulla prima scheda (quella con etichetta "Numero" e scegliamo la voce (che compare nella prima casella a sinistra) "Personalizzato".


Figura 4

Inseriamo nella casella "Tipo:" la lettera "g" (Figura 4) perchè vogliamo mostrare solo il giorno a cui si riferisce la data presente nella cella.

Il risultato di questa operazione è visibile in Figura 5.


Figura 5

Adesso vogliamo evidenziare in qualche maniera i giorni festivi del mese, impostando, ad esempio, di Rosso, il colore del carattere dei giorni di Domenica.

Per far ciò dobbiamo utilizzare un'altra funzione di Excel, GIORNO.SETTIMANA(), che accetta 2 paramentri: una data e un valore che vi spiegherò di seguito e che restituisce come risultato un valore compreso tra 1 e 7 (o tra 0 e 6). Valore che (come penso avrete capito) indica il giorno della settimana.

Il secondo parametro di cui vi parlavo è un numero che, come spiegato nella finestra di dialogo della funzione (Figura 6), permette di specificare come vogliamo considerare i giorni della settimana. Nel nostro caso utilizziamo il parametro "2" in modo da avere il Lunedì come primo giorno della settimana (valore restituito dalla funzione = 1) e la Domenica come settimo giorno della settimana (valore restituito dalla funzione = 7) .


Figura 6

Inseriamo questa funzione nella cella D5: =GIORNO.SETTIMANA(C5;2)

Otterremo come risultato visibile nella cella il valore 4 che corrisponde ad un Giovedì, ed infatti se andiamo a controllare sul Calendario il 1 gennaio del 2009 era proprio un Giovedì.


Figura 7

Se adesso ricopiamo questa funzione nelle sottostanti celle otterremo di poter individuare visivamente i giorni di Domenica che saranno quelli in corrispondenza del valore "7" restituito dalla funzione prima impostata.

Ma noi vogliamo un altro risultato!

link sponsorizzati

Copiamo allora la formula che abbiamo appena inserito nella cella D5.

Selezionamo la cella C5 e andiamo al menu Formato e scegliamo la voce Formattazione Condizionale.

La Formattazione Condizionale delle celle ci permette di impostare, appunto, il formato delle celle sulla base di alcuni test che possiamo effettuare.


Figura 8

In Figura 8 vedete la finestra di dialogo dello strumento Formattazione Condizionale alla sua apertura. La casella a discesa che compare a sinistra permette di selezionare 2 tipi di test. Nel primo caso "Il valore della cella è" possiamo testare direttamente il contenuto della cella su cui siamo posizionati. Nel secondo caso "La formula è" possiamo passare direttamente allo strumento una formula e testare il suo risultato.

Scegliamo questa seconda opzione e inseriamo nella casella a destra la formula che avevamo copiato in precedenza aggiungendo alla fine "=7" perchè noi vogliamo testare quando il giorno della settimana contenuto nella nostra cella sia uguale a 7 cioè una Domenica.


Figura 9

A questo punto premiamo il pulsante Formato e impostiamo il colore del carattere uguale a Rosso e il formato Grassetto.


Figura 10

Premiamo sul pulsante Ok della finestra e poi anche su quello Ok della finestra della Formattione Condizionale.

Non abbiamo ottenuto nessun risultato!

E deve essere così, perche' in effetti il 1 gennaio 2009 è un Giovedì!

Manteniamo selezionata la cella C5 e premiamo sul pulsante della barra di stato di Excel "Copia Formato".


Figura 11

Andiamo subito dopo a selezionare le celle con i restanti giorni del mese (da C6 a C35).

Ecco che i giorni che rappresentano le Domeniche del mese appariranno in colore Rosso e in Grassetto.

Se adesso andiamo a modificare il contenuto della cella B2 o della cella D2 noteremo che anche i valori dei giorni del mese si aggiornano comprese le domeniche presenti nel mese.

Notiamo anche che l'ultima cella (la C35) riporta un valore errato se il mese è di 30 giorni anzichè di 31. per eliminare questo incoveniente e per far si che il nostro calendario funzioni bene anche per il mese di febbraio (che può avere 28 o 29 giorni a seconda se l'anno è bisestile o meno) introduciamo una nuova condizione nella Formattazione Condizionale di quest'ultime celle.

Per far questo useremo una combinazione di 2 funzioni: NON() e MESE().

La funzione MESE() restituisce il mese di una certa data, la funzione NON() restituisce un valore logico (Vero o Falso) a seconda dell'espressione in essa contenuta.

Che cosa dobbiamo verificare quindi?

Che la data che compare nelle ultime 3 celle del nostro calendario sia riferita al mese che abbiamo impostato nella cella D2.

In pratica che il risultato della funzione MESE(C35) sia uguale al contenuto della cella D2. che si può scrivere in questa forma =MESE(C35)=D2 (ho preso come esempio l'ultima cella della nostra colonna contenente i giorni del mese). Scrivendo così otterrò un risultato "Falso" quando il mese sarà di 30 giorni, devo però ottenre un valore "Vero" perchè la "Formattazione Condizionale funzioni a dovere. Allora utilizzo anche la funzione NON(), riscrivendo l'espressione in questa forma: =NON(MESE(C35)=D2).

In questo modo ottengo un valore "Vero" quando in realtà il risultato dell'espressione calcolata per mezzo dell afunzione MESE() mi resituisce "Falso".

Aggiungiamo pertanto questa ulteriore condizione alla Formattazione Condizionale già impostata nell'ultima cella (C35) impostando questa volta il formato del carattere al colore di sfondo del foglio di lavoro (in questo caso Bianco). Ripetiamo l'operazione anche per le celle dei giorni 30 e 29, salviamo il tutto e iniziamo a provare il nostro primo esempio di calendario perpetuo modificando il valore nella cella D2.


Figura 12

Se avete fatto delle prove vi accorgerete che questo metodo non funziona! In particolare non funziona nel caso del mese di Febbraio dell'anno 2009 in quanto il giorno 1 marzo viene visualizzato in rosso nella cella C33. Perchè accade questo?

Perchè la Formattazione Condizionale esegue i test che abbiamo impostato partendo dal primo e fermandosi non appena trova un test che restituisce il valore "Vero". Nel caso particolare che vi ho indicato prima per l'appunto il 1 marzo 2009 è una domenica e quindi la Formattazione Condizionale applicata alla cella C33 esegue il primo test che ha come risultato "Vero" e termina senza eseguire la seconda che avrebbe prodotto comunque un risultato "Vero", non essendo quel giorno parte del mese che stiamo visualizzando.

Dobbiamo invertire l'ordine di esecuzione dei test in modo da correggere questo comportamento.

Per evitare di riscrivere tutto vi suggerisco di aggiungere una terza condizione alla Formattazione Condizionale identica alla prima.


Figura 13

Dopodichè premendo sul pulsante Elimina, eliminate la condizione 1


Figura 14

ottenendo cosi' l'ordine giusto per le 2 condizioni.


Figura 15

Applicate la stessa condizione anche alle altre 2 celle e salvate il vostro lavoro.

Potete scaricare il file di Excel con l'esempio completo facendo clic qui.

link sponsorizzati
Se ti è piaciuto questo articolo condividilo sul tuo social preferito