Modi diversi di formattare date in VBA

February 24

Diversi modi di formattare date in VBA includono quelli per la creazione di stringhe di data con mesi enunciati, la formattazione con solo numeri, con i giorni feriali, e con i formati personalizzati. È possibile visualizzare i formati di data predefiniti disponibili in VBA tramite interfaccia standard di Excel. Fare clic sulla piccola freccia in basso a destra del pannello "Numero" della scheda "Home" per visualizzare un elenco di questi formati.

Formati lunghi

Un modo è possibile formattare le date con VBA è quello di utilizzare una serie di caratteri "m" per indicare i nomi lunghi dei mesi. Ad esempio, il formato "mmmm" produrrà solo l'enunciato testo "dicembre", se la data si sta formattazione è nel mese di dicembre. Se si desidera un tre lettere al mese, usare "mmm", come in "Selection.NumberFormat =" mmm dd, yyyy "" per le date come "il 31 dicembre 1966." Si noti l'uso del carattere "d" per rappresentare il giorno.

Formati brevi

Se si desidera che i numeri invece di enunciati di testo per le date, utilizzare solo uno o due caratteri di formattazione per i vostri mesi. Ad esempio, digitare "Selection.NumberFormat =" gg / mm / aaaa "" per le date come "1966/12/31". Per "12/66", utilizzare la stringa di formattazione "mm / aa," o semplicemente "M / Y".

Date con giorno della settimana

Per formattare una data con un giorno precisato, usare quattro personaggi "D" per indicare il giorno. Ad esempio, digitare "Selection.NumberFormat =" dddd, mmm dd, yyyy "" per le date come "Sabato, 31 dicembre 1966." Per abbreviare il giorno senza utilizzare i numeri, utilizzare tre caratteri "d" invece di quattro, come in "ddd, mmm dd, yyyy".

Formati data personalizzata

È possibile creare un formato di data personalizzato in VBA utilizzando qualsiasi delimitatore oltre a quelli comuni di "/" e "-". Ad esempio, è possibile utilizzare una dichiarazione come "Selection.NumberFormat =" mm ~ ~ dd aa "" per la produzione di date, come "12 ~ 31 ~ 66". Si può scegliere un tale formato personalizzato solo per il gusto di stile, o per preparare le stringhe di data per i programmi che richiedono caratteri specifici per il loro contributo.

Esempio di programma

Il seguente programma di esempio VBA consente di provare rapidamente diversi formati di data. Incollare il programma nell'ambiente di programmazione VBA, che è possibile inserire premendo il tasto "Alt" e "F11" simultaneamente dopo l'apertura di Excel. Dopo aver eseguito il programma premendo il tasto "F5", digitare un formato di data quando viene richiesto, come ad esempio "mm / gg / aa." Il programma visualizza la data corrente nel formato specificato.

FormatDates sub ()
Dim FMT, s1

fmt = InputBox("Type a date format")
s1 = Format(Now, fmt)
MsgBox s1

End Sub