Data formato VBA

Questo tutorial dimostrerà come formattare le date usando VBA.

Formatta le date in VBA

Esistono due metodi per formattare le date utilizzando VBA.

  1. La proprietà NumberFormat di Celle/Intervalli - Per formattare le date memorizzate nelle celle
  2. La funzione Formato VBA - Per formattare le date in VBA (es. variabili)

NumberFormat - Date

Il formato numerico predefinito di una cella in Excel è Generale. È possibile visualizzare valori come numeri, testo, date, percentuali o valute modificando il formato dei numeri. La proprietà NumberFormat può essere utilizzata in VBA per impostare il formato numerico delle date in una cella o in un intervallo.

Nota: Per vedere i diversi formati di data standard disponibili in Excel, vai su Home> Numero e vedrai opzioni come Data breve, Data lunga e Ora.


Data breve

L'opzione Formattazione numero data breve visualizza la data in un formato numerico breve.

Il codice seguente imposterà la proprietà .NumberFormat della cella A1 su Data breve:

1 Intervallo("A1").NumberFormat = "mm/gg/aaaa"

Appuntamento lungo

La formattazione del numero della data lunga visualizza la data in un formato scritto più lungo. Il codice seguente imposterà la proprietà .NumberFormat della cella A1 su Long date:

1 Range("A1").NumberFormat = "gggg, mmmm gg, aaaa"

Date personalizzate

Per visualizzare i codici del formato numerico personalizzato che è possibile utilizzare in VBA per formattare le date, andare su Home>Numero e fare clic sul pulsante di avvio della finestra di dialogo. Seleziona la scheda Numero e scegli Personalizzato.

Puoi selezionare i formati personalizzati incorporati per la tua data o creare i tuoi formati di data definiti dall'utente. Il codice seguente imposterà la proprietà .NumberFormat della cella A1 su un formato di data personalizzato incorporato:

1 Range("A1").NumberFormat = "mmm-yy"

Il risultato è:

Il codice seguente imposterà la proprietà .NumberFormat della cella A1, su un formato di data personalizzato definito dall'utente:

1 Range("A1").NumberFormat = "dddd-dd-mmm-yy"

Il risultato è:

Esaminando gli esempi predefiniti di Excel puoi imparare come inserire NumberFormats. Per ulteriori informazioni, leggi la documentazione di Microsoft sui formati numerici per le date.

Funzione formato VBA

Come accennato in precedenza, il metodo NumberFormat è appropriato per impostare il Numberformat delle date archiviate nelle celle di Excel. In VBA, puoi utilizzare la funzione Format per convertire le date in stringhe con una determinata formattazione della data.

Utilizzerai la seguente sintassi per formattare le date:

Format(String_Representation, NumberFormatCode) dove:

String_Representation - la stringa di testo che rappresenta la data.

NumberFormatCode - il codice del formato numerico che specifica il modo in cui deve essere visualizzata la data.

Il codice seguente mostra come formattare una rappresentazione di stringa di testo di una data come formato data lungo:

1 Formato MsgBox ("1/1/2010", "gggg, mmmm gg, aaaa")

Il risultato è:

Si noti che la funzione Format utilizza la stessa sintassi di formattazione della data di NumberFormat sopra.

Il codice seguente mostra come formattare una rappresentazione di stringa di testo di una data come formato di data medio:

1 Formato MsgBox ("09 ottobre 2012", "Data media")

Il risultato è:

Il codice seguente mostra come formattare una rappresentazione di stringa di testo di una data come formato definito dall'utente:

1 Formato MsgBox ("09 ottobre 2012", "gggg: gg/mm/aa")

Generatore di formati personalizzati VBA

Il nostro componente aggiuntivo VBA: AutoMacro contiene un Custom Format Builder per l'editor VBA. Ciò ti consente di impostare formati personalizzati e visualizzare immediatamente l'anteprima dell'output per il valore desiderato:

Il componente aggiuntivo VBA contiene numerosi altri "Generatori di codice", un'ampia libreria di codici e un assortimento di altri strumenti di codifica. È il componente aggiuntivo definitivo per chiunque sia seriamente interessato alla programmazione VBA!

Data formato VBA in accesso

La funzione Data formato VBA funziona esattamente allo stesso modo in Access VBA come in Excel VBA.

12345678910 Funzione GetDateFilter() As String'crea una stringa per ottenere informazioni da 2 campi data su un modulo in AccessDim strDateField As StringIf IsNull(Me.txtSDate) = False ThenIf IsNull(Me.txtEDate) = True Then Me.txtEDate = Me.txtSDateSe strDateField2 = "" AlloraGetDateFilter = strDateField & " Between #" & Format(Me.txtSDate, "mm/dd/yyyy") & "# And # " & Format(Me.txtEDate, "mm/dd/yyyy") & "#"Finisci seFinisci seFine funzione

Aiuterete lo sviluppo del sito, condividere la pagina con i tuoi amici

wave wave wave wave wave