Pillole di Excel – 42 – Altre funzioni di data 1

DATA.VALORE

Iniziamo tranquilli con la funzione DATA.VALORE, chiamata in inglese DATEVALUE. A che cavolo serve, direte voi? In pratica, questa funzione converte una data che sia memorizzata come testo in un numero seriale che Excel comprende come data.

Sapete (spero) che per Excel le date corrispondono al numero di giorni passati da una determinata data (ne ho parlato nel capitolo 09 del primo Manabile, non intendo ritornarci adesso) ed è quindi quel numero di giorni il vero contenuto della cella. Es: la data 31/05/2020 corrisponde al numero seriale 43.982.

Facciamo subito un esempio pratico: in tre celle diverse (A2, B2 e C2) scrivo giorno, mese e anno correnti. In una quarta cella (nell’esempio sarà la B5) potrei inserire una funzione che concateni i valori delle tre celle nel corretto ordine (essendo in Italia userò la sequenza giorno/mese/anno) e che converta direttamente il risultato in un numero seriale utilizzabile poi, magari, per ulteriori calcoli.

Pillole di Excel - 42 - Altre funzioni di data 1 - Lamberto Salucco

Ecco che magicamente il contenuto delle tre celle ha partorito un numero seriale da una concatenazione di testo. Nella cella B5 ho inserito questo:

=DATA.VALORE(A2&”/”&B2&”/”&C2)

Mi pare abbastanza semplice, non credo che abbia bisogno di ulteriori spiegazioni.

Sappiate che la DATA.VALORE funziona perfettamente sia su OpenOffice Calc sia su Libre Office Calc.

 

GIORNO.SETTIMANA

Passiamo adesso alla seconda funzione di data che dobbiamo trattare: GIORNO.SETTIMANA (in inglese WEEKDAY). In pratica questa funzione serve a estrarre il giorno della settimana da una determinata data, sotto forma di numero da 1 a 7. A seconda degli argomenti impostati, l’accoppiata tra questo numero e il giorno della settimana potrà variare. Intanto vediamo la sintassi, poi vedrò di chiarire la cosa con un paio di esempi pratici.

=GIORNO.SETTIMANA(num_seriale;[tipo_restituito])

Come risulta lampante, la funzione in questione accetta due argomenti, uno dei quali facoltativo. Il primo dei due (in genere denominato num_seriale) non è altro che la data dalla quale vogliamo estrarre il giorno della settimana, nella quasi totalità dei casi sarà la cella che contiene tale data.

Il secondo argomento determina invece quale numero verrà assegnato a ogni giorno della settimana, in base a una serie di opzioni disponibili: 1, 2, 3, 11, 12, 13, 14, 15, 16, 17, 18, 19 e 20. Senza voler entrare troppo nel dettaglio: 1 è il valore di default (dato che si tratta di un argomento facoltativo è ciò che verrà quindi usato se non lo imposti in modo diverso) e assegna i numeri da 1 a 7 partendo dalla domenica e finendo col sabato. Se lo imposti a 2, invece, assegna i numeri da 1 a 7 partendo dal lunedì e finendo con la domenica. Ci sono altre otto opzioni ma non ho la minima intenzione di descriverle tutte, avete capito come funziona.

Vediamo adesso questa funzione in azione.

Pillole di Excel - 42 - Altre funzioni di data 1 - Lamberto Salucco

Nell’esempio dell’immagine ho inserito in B1 la funzione =OGGI() e nella C1 la funzione per estrarre il giorno della settimana:

=GIORNO.SETTIMANA(B1;2)

Ovviamente, i due argomenti sono B1 (ovvero la cella che contiene la data da analizzare) e 2 (che assegna il numero 1 al lunedì, il numero 2 al martedì e così via). Essendo oggi lunedì primo giugno 2020 tutto funziona a meraviglia.

Come fare a trasformare questi numeri ottenuti con la GIORNO.SETTIMANA in “lunedì”, “martedì” etc. dovrebbe essere per voi un gioco da ragazzi, visto che nel capitolo precedente abbiamo parlato della funzione TESTO: potete inserire in una cella una funzione tipo: =TESTO(C1;”gggg”) e risolverete il problema. Giusto una precisazione: con la funzione TESTO la domenica corrisponderà sempre al numero 1, il lunedì al 2 e così via; se avete usato un codice diverso da 1 come argomento della GIORNO.SETTIMANA, fate attenzione a far tornare correttamente il risultato, per esempio nel caso specifico dell’immagine avrei dovuto inserire =TESTO(C1+1;”gggg”) perché avevo usato 2 come argomento.

Anche in questo caso, il funzionamento non cambia per niente sia su OpenOffice Calc sia su Libre Office Calc.

 

FINE.MESE

Parliamo adesso della funzione FINE.MESE che in inglese si chiama EOMONTH. Tecnicamente questa funzione “restituisce il numero seriale dell’ultimo giorno del mese precedente o successivo di un numero specificato di mesi”. Gli argomenti accettati sono due, entrambi obbligatori. Ecco la sintassi:

=FINE.MESE(Data_iniziale;Mesi)

Data_iniziale definisce la data a partire dalla quale iniziare a contare mentre Mesi è il numero di mesi che devono essere aggiunti (può essere un valore positivo o negativo). Detto così non ci si capisce un tubo quindi sarà bene fare subito un esempio pratico.

Ho un insieme di fatture emesse a diversi clienti, tali fatture hanno caratteristiche diverse: alcune devono essere pagate subito, altre a fine mese, altre ancora alla fine del mese successivo o ancora peggio: i famigerati 30 gg FM, 60 gg FM, 90 gg FM.

Pillole di Excel - 42 - Altre funzioni di data 1 - Lamberto Salucco

Nella colonna D l’utente mette una X se la fattura deve essere pagata a fine mese data fattura. Nella colonna E invece mette il numero di mesi eventuali da aggiungere. Assodato che nella colonna G c’è solo una serie di sottrazioni con una formattazione condizionale (per esempio in G4 c’è scritto =F4-C$1), vediamo il contenuto della colonna F che ci interessa particolarmente in questo caso. In F4 c’è scritto:

=SE(D4=”X”;FINE.MESE(C4;E4);C4)

Leggiamola insieme. Funzione logica SE il cui test verifica se in D4 è stato inserito o meno il segno X: se è presente significa che il pagamento è a fine mese e quindi troviamo la FINE.MESE con i due argomenti (C4 come data iniziale ed E4 come numero di mesi da aggiungere), se invece non è presente la data scritta in C4 rimane invariata. Per esempio: la data in C5 resta uguale in F5 perché D5 è vuota mentre la data in C7 viene ricalcolata a causa della X in D7; dal 10 dicembre 2020 dovremmo andare a fine mese quindi 31 dicembre 2020 ma, visto che in E7 c’è scritto 2, dobbiamo aggiungere due mesi e la data prevista finale diventa il 28 febbraio 2021.

Il funzionamento è identico anche su Calc, sia su OpenOffice sia su Libre Office.

Con le funzioni di data ci rivediamo la prossima volta.

 

 

Tratto da “Manabile Semiserio di Excel – Parte Seconda per utenti bravini

Qui il link per acquistare il libro su Amazon

Manabile Semiserio di Excel - Seconda parte per utenti bravini - Lamberto Salucco | Rebus Multimedia

Altri articoli con tag simili

Pillole di Excel – 48 – Funzioni logiche E, NON

Siamo arrivati al penultimo capitolo, voglio dedicarlo a concludere l’excursus fatto nel primo manabile...

Pillole di Excel – 34 – Correzione automatica

E siamo arrivati all’ultimo argomento (banale ma utile) per questo capitolo: la correzione automatica....

Buone vacanze da Adalberto!

Adalberto, ancora bloccato ad Oslo per l’infinita conferenza sugli ungulati, coglie l’occasione per augurare...

Pillole di Excel – 14 – Stampa

AREA DI STAMPA Parliamo ora un po’ di stampa e iniziamo dall’Area di Stampa ovvero...

Ep. 52: “Je t’aime… Moi non plus”

https://www.youtube.com/watch?v=0Ow6j8zhcXI   “Adesso basta, dì le tue ultime preghiere” urla il deteurone. “Oh no, devo darvi una...

Assioma n° 12 – Anonymous – 23/03/19

Ecco, in questo caso l’assioma è un po’ difficile da spiegare. Perché in realtà...
spot_img

Lamberto Salucco

(Firenze, 1972) – Sono un consulente informatico (ma laureato in Lettere Moderne), mi occupo di marketing (ma solo digitale), social media (ma non tutti), editoria (ma non cartacea), musica (ma detesto il reggae), formazione (ma non scolastica), fake news (ma non sono un giornalista), programmazione (ma solo Python), siti web (ma solo con CMS), sviluppo app (ma solo iOS e Android), bias cognitivi (ma non sono uno psicologo), intelligence informatica (ma solo OSINT), grafica 3D (ma niente CAD), grafica 2D (ma niente Illustrator), Office Automation (ma non mi piace Access).