Visualizzare il giorno della settimana con due caratteri in un formato di data personalizzato

Il lavoro di Riccardo richiede che formatti le date in modo che vengano visualizzate in quello che crede sia un formato piuttosto strano. Se, ad esempio, una cella contiene la data 20/10/19, deve essere visualizzata come “DO 20/10”, senza virgolette. (DO è una rappresentazione a due caratteri del giorno della settimana, in questo caso domenica). Riccardo si chiede se esista un modo per farlo come, ad esempio, un formato personalizzato.

Non c’è modo di farlo esattamente utilizzando un formato personalizzato. Il motivo è che non esiste un codice nei formati personalizzati che consenta di creare un giorno della settimana di due caratteri. La soluzione più vicina prevede un giorno della settimana di tre caratteri:

ggg g/m

 

Anche questo, però, non farà il giorno della settimana di tre caratteri in maiuscolo.

Quindi, questo ci porta a utilizzare una formula per trovare la data formattata come vogliamo. Se hai la data nella cella A1, puoi usare la seguente formula:

=SINISTRA(MAIUSC(TESTO(A1;"ggg")); 2) & " " & TESTO(A1; "g/m")

 

Questo utilizza la funzione TESTO per restituire, in primo luogo, il giorno della settimana di tre caratteri che viene convertito in maiuscolo utilizzando la formula MAIUSC. La funzione SINISTRA viene quindi utilizzata per acquisire i primi due caratteri di quel giorno della settimana che viene quindi aggiunto alla combinazione giorno/mese. Questo restituisce esattamente ciò che voleva Riccardo.

Lo svantaggio dell’utilizzo di questo approccio è che la data restituita dalla formula è testo; non è una data reale. Se fossimo stati in grado di utilizzare un formato personalizzato, il valore della data sottostante sarebbe rimasto invariato. Questo, tuttavia, sarebbe il caso di qualsiasi formattazione di data “strana” come questa. A causa di questo potenziale svantaggio, potresti voler conservare le date effettive come date, anche se si trovano in una colonna nascosta o in un foglio di lavoro nascosto.

Potresti anche, se lo desideri, creare una macro che restituisca una stringa con la data formattata. Ecco una semplice funzione definita dall’utente:

Questo contenuto è riservato agli abbonati

Solo gli utenti con Abbonamento VBA Coder oppure Ultimate possono visionarlo.

Se sei già abbonato Accedi per sbloccare il contenuto!

In caso contrario abbonati qui! L'abbonamento è conveniente.

E puoi interromperlo in ogni momento e in completa autonomia.

ABBONATI

(puoi renderti conto di quanti siano i contenuti riservati

raggiungendo questa pagina)

È quindi possibile utilizzare la funzione nel modo seguente nel foglio di lavoro:

=FmtDate(A1)

 

Ciò presuppone che la data sia in A1 e la funzione restituisce una stringa formattata come desidera Riccardo.

 

Tags: , , , , , , , , , ,

Ti è stato utile?