Funzione VBA CDATE

Funzione CDATE in VBA

VBA CDATE è una funzione di conversione del tipo di dati che converte un tipo di dati che è testo o stringa in un tipo di dati di data. Una volta che il valore è stato convertito nel tipo di dati della data, possiamo giocare con le cose sulla data.

Sintassi di CDATE

Di seguito è riportata la sintassi della funzione CDATE in VBA.

Espressione: l' espressione può essere una stringa o un valore di testo o una variabile che contiene un valore da convertire nel tipo di dati data.

CDATE identifica il formato di data e ora nel computer su cui stiamo lavorando e converte il valore fornito nello stesso tipo di dati di data. Se si fornisce solo il giorno e il mese e si ignora l'anno, la funzione CDATE prende l'anno del sistema, viene visualizzato insieme al giorno e al mese forniti.

Vedremo sempre più esempi nella sezione sottostante.

Come utilizzare la funzione CDATE in Excel VBA?

Esempi di funzione CDATE in excel vba.

Puoi scaricare questo modello Excel VBA CDATE qui - Modello Excel VBA CDATE

Esempio 1

Prima di mostrarti l'esempio di CDATE, guarda prima il codice seguente.

Codice:

 Sub CDATE_Example1 () Dim k As String k = "25-12" MsgBox k End Sub 

In quanto sopra per la variabile "k", ho assegnato il valore "25-12". Quando eseguo questo codice vedremo lo stesso valore nella finestra del messaggio in VBA.

Ma questo può essere convertito in data utilizzando la funzione CDATE VBA. Per questo definire un'altra variabile come Data.

Codice:

 Dim k1 come data 

Per questa variabile “k1” assegnare la funzione CDATE e fornire la variabile “k” che contiene la stringa “25-12”. E per la finestra di messaggio mostra il valore della variabile "k1" invece di "k".

Codice:

k1 = CDato (k)

Ora esegui il codice e vedi il risultato in una finestra di messaggio.

Quindi il risultato è "12/25/2019".

Guardate da vicino il valore che abbiamo fornito, abbiamo fornito "25-12" che non abbiamo fornito anno.

Durante la scrittura di questo articolo, l'anno in corso nel mio sistema era il 2019, quindi VBA CDATE ha convertito il valore di stringa "25-12" fino ad oggi e ha aggiunto l'anno di sistema 2019. Quindi i risultati finali si leggono in questo modo il 25/12/2019, ovvero il 25 dicembre 2019.

Esempio n. 2

Ora guarda il codice sottostante.

Codice:

 Sub CDATE_Example2 () Dim k As Variant Dim kResult As Date k = 43889 kResult = CDate (k) MsgBox kResult End Sub 

Nel codice sopra per la variabile "k", ho applicato il numero "43889". Sappiamo tutti che questo è un numero di serie, ma per un'altra variabile "KResult" abbiamo convertito questo valore in data utilizzando la funzione "CDATE".

Lo stesso risultato della variabile "kResult" mostrato nella finestra di messaggio.

Eseguire il codice e vedere la magia della funzione "CDATE".

Mostra il risultato come "2/28/2020", se non hai familiarità con le date in Excel allora ti starai chiedendo come è potuto accadere.

Ad esempio, inserisci lo stesso numero (43889) in una delle celle del foglio di calcolo.

A tal fine, applica il formato "GG-MM-AAAA".

Ora fai clic su Ok e guarda il risultato.

Ora il risultato è cambiato da un numero di serie ad oggi. Poiché abbiamo applicato il formato della data sopra il numero di serie, ha mostrato la rispettiva data.

Quindi questo significa che il numero di serie 43889 è uguale alla data 28-02-2020.

Quindi nel nostro codice VBA la funzione CDATE ha eseguito la stessa cosa convertendo il valore della stringa in un tipo di dati della data.

Esempio n. 3

Per questo esempio, guarda il codice seguente.

 Sub CDATE_Example3 () Dim Value1 Dim Value2 Dim Value3 Value1 = "December 24, 2019" Value2 = # 6/25/2018 # Value3 = "18:30:48 PM" MsgBox CDate (Value1) MsgBox CDate (Value2) MsgBox CDate ( Value3) End Sub 

Quando eseguiamo questo codice, otterremo i risultati seguenti.

Quindi, tutti i valori vengono convertiti nel tipo di dati della data con la funzione CDATE.

Cose da ricordare

  • CDATE converte solo numeri e valori stringa nel tipo di dati data.
  • Questo è utile quando lo usiamo con altre funzioni.
  • Se viene fornito il valore del tipo di dati errato, verrà visualizzato un errore di mancata corrispondenza del tipo.
  • Poiché la data e l'ora fanno parte del numero di serie, converte l'ora e l'ora corretta.