14 – Le MACRO con Excel – Data e ora

Stampa l'articolo

Sfruttando il codice VBA, vedremo quali istruzioni dobbiamo usare per per visualizzare una data o un orario e come modificarne il formato.

Ma partiamo subito, portiamoci in Sviluppo, scegliamo Macro e diamo il nome alla nostra nuova macro che chiameremo “Data” e quindi premiamo su Crea.

Per inserire la data nella cella A1 l’istruzione che dovremo usare sarà la seguente:

Range(“A1”) = Date

Facciamo partire la macro premendo F8

Ed Excel visualizzerà la data corrente nel formato standard cioè giorno, mese ed anno.

Se volessimo fare un confronto tra codice VBA e le funzioni, quanto abbiamo appena scritto corrisponde alla funzione OGGI()

Vi dico questo perché se già siete a conoscenza delle funzioni che riguardano data e ora, questo in qualche modo vi agevolerà il compito, perché spesso basterà tradurre la funzione dall’italiano all’inglese per ricordare il codice da usare.

Se con il comando Date abbiamo ottenuto la data completa, usando le istruzioni: Day, Month e Year estrarremo rispettivamente il giorno, il mese e l’anno.

Quindi scriviamo:

Range(“A2”) = Day(Date)

Range(“A3”) = Month(Date)

Range(“A4”) = Year(Date)

F8 per eseguire le righe appena scritte e come voluto otterremo la visualizzazione di giorno, mese ed anno.

Passiamo ora alla visualizzazione dell’orario, per inserirlo nella cella A5 l’istruzione che dovremo usare sarà:

Range(“A5”) = Time

Facciamo partire la macro premendo F8

Ed Excel visualizzerà l’orario completo in ore, minuti e secondi.

Come fatto prima per la data, potremo dividere l’orario in ore, minuti e secondi usando rispettivamente le istruzioni: Hour, Minute e Second

Quindi scriviamo:

Range(“A6”) = Hour(Time)

Range(“A7”) = Minute(Time)

Range(“A8”) = Second(Time)

Sempre F8 per eseguire le righe appena scritte, e otterremo la visualizzazione di ora, minuto e secondo al momento dell’esecuzione dell’istruzione.

Vogliamo visualizzare contemporaneamente data e ora? L’istruzione da usare sarà:

Range(“A9”) = Now

F8 per vedere il risultato nella cella A9

Imparate le istruzione per visualizzare data e ora passiamo a vedere come cambiare il formato tramite l’istruzione NumberFormat

Se per esempio volessimo visualizzare il giorno scritto per esteso della data presente nella cella A1 dovremo scrivere:

Range(“A1”).NumberFormat = (“dddd”)

F8 e la cella A1 visualizzerà il giorno per esteso

Questo modo per indicare il formato non è nient’altro che lo stesso criterio utilizzato nella personalizzazione delle celle, mettendo una o due “d” verrà visualizzato il giorno in formato numerico, con tre “d” verranno visualizzate le prime 3 lettere del giorno, e con 4 il giorno per esteso.

Allo stesso modo potremo cambiare la visualizzazione dell’ora, se l’intento è quello di far vedere solo ore e minuti della cella A5 ci basterà scrivere:

Range(“A5”).NumberFormat = (“hh:mm”)

Sempre F8 per eseguire la riga di codice

Fin qui abbiamo visto come inserire date e orari al momento dell’esecuzione dell’istruzione, ma se volessimo inserire una data precisa, sottolineo in formato numerico, sarà sufficiente comprendere tale data all’interno del cancelletto, vediamo come:

l’istruzione dovrà essere scritta così:

Range(“A10”) = #12/31/2022#

Prestate attenzione perché l’ordine sarà mese, giorno ed anno

F8 per verificare e la cella A10 riporterà la data, ribadisco in formato numerico, del 31/12/2022

Per finire vediamo come poter indicare una data, però questa volta in formato testo.

Range(“A11”) = Format(Date, “dd mmmm yyyy”)

Facciamo partire l’istruzione con F8 e vediamo subito che il risultato si posizione sul lato sinistro della cella, indicandoci a differenza di quanto fatto fin’ora, che si tratta di un formato testo e non numerico.

Di seguito il codice utilizzato:

Nel video qui sotto trovate tutti i passaggi appena illustrati, buona visione.

Condividi il post

Facebook
Twitter
LinkedIn
Email
WhatsApp

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *

Articoli correlati

Funzioni & Formule

La funzione TESTO

La funzione TESTO, consente di convertire numeri o date in testo e di formattarlo secondo le proprie esigenze.

Read More »
Torna su