VBA DATEVALUE

Che cos'è la funzione DateValue VBA?

Una funzione DateValue è una funzione incorporata in Excel VBA nella categoria della funzione Data / ora. Funziona sia come funzione VBA che come funzione del foglio di lavoro in vba. Questa funzione restituisce il numero seriale o il valore di Date fornito nel formato di rappresentazione stringa ignorando le informazioni sull'ora fornite dalla stringa Date. Viene utilizzato in due modi diversi in Excel. Questa funzione viene utilizzata come formula del foglio di lavoro che entra in una cella del foglio di lavoro. Viene utilizzato come codice macro nell'applicazione VBA inserendolo tramite Visual Basic Editor associato a Microsoft Excel.

In questo articolo, impareremo esempi di VBA DATEVALUE e come usarlo con una spiegazione chiara.

Spiegazione della funzione Datevalue VBA

In VBA, DATEVALUE utilizza la seguente sintassi.

Questa funzione utilizza solo il singolo argomento o parametro

  • Data : è la data rappresentata nel formato stringa
  • Restituisce: questa funzione restituisce il valore della data quando viene utilizzata come funzione VBA. Restituisce il valore della data quando viene utilizzato come funzione del foglio di lavoro

La funzione VBA DateValue è in grado di interpretare i dati rappresentati in formato testo menzionato in un formato Excel valido. Non è in grado di restituire il valore della data se la stringa include la rappresentazione testuale del giorno della settimana.

I vantaggi della funzione DateValue VBA sono l'estrazione del valore della data dalla stringa e la conversione della data con l'ora nell'unica data. Possiamo semplicemente che quando una data viene fornita con l'ora, questa funzione solo il valore della data evitando il valore dell'ora.

Come utilizzare Excel VBA DATEVALUE?

Per utilizzare la funzione DateValue in Excel è necessario prima aprire l'editor VBA.

Il pulsante di comando deve essere posizionato nel foglio di lavoro di Excel per aggiungere le righe del programma VBA ad esso. Per implementare le linee del programma, l'utente richiede di fare clic sul pulsante di comando nel foglio excel. Per avere un output valido dal programma, viene fornito un input valido tramite l'argomento. Ad esempio, il codice seguente aiuta alla creazione di una macro per eseguire la funzione DateValue per estrarre il valore della data dal testo in VBA.

Programma VBA: 

 Sub Datebutton () Dim myDate As Date myDate = DateValue ("August 15, 1991") MsgBox Date (myDate) End Sub 

Questo codice risulta nella data come 15 dall'input fornito.

Esempi di Excel VBA DATEVALUE

Di seguito sono riportati gli esempi di DateValue in Excel VBA.

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

Esempio n. 1: ottieni giorno, mese e anno da una data

Sono seguiti pochi passaggi per creare ed eseguire il programma in VBA. Quelli includono

Passaggio 1: vai alla scheda Sviluppatore, posiziona il cursore su una cella nel foglio Excel e fai clic sull'opzione "Inserisci" e scegli "Pulsante di comando" sotto Controllo ActiveX come mostrato nella figura.

Trascina il pulsante nel punto desiderato e assegna alla didascalia il pulsante Data dalla finestra delle proprietà.

Passaggio 2: fare doppio clic sul pulsante per reindirizzare al progetto VBA e scrivere il codice tra il pulsante di comando Private Sub e end sub.

Il codice dovrebbe essere sviluppato come di seguito per ottenere una data, un mese e un anno.

Codice:

 Private Sub Datebutton1_Click () Dim Exampledate As Date Exampledate = DateValue ("April 19,2019") MsgBox Date MsgBox Year (Exampledate) MsgBox Month (Exampledate) End Sub 

In questo codice, Datebutton1_Click () è il nome ed exampledate sono variabili con il tipo di dati Date e Msgbox per visualizzare l'output.

Passaggio 3: durante lo sviluppo del codice, si verificheranno errori di mancata corrispondenza del tipo vba e sarà necessario occuparsene.

Passaggio 4: in questo passaggio, eseguire il programma facendo clic sull'opzione Esegui.

Oppure possiamo controllare o eseguire il debug del programma passo dopo passo selezionando l'opzione Entra nel menu Debug. Se il nostro codice è senza errori, visualizza l'output.

Passaggio 5 : quando il programma viene eseguito, visualizza prima la finestra di messaggio con la data specificata nel testo di input. Quindi, fare clic su OK per vedere di nuovo il valore dell'anno, fare clic su OK nella finestra del messaggio per vedere il valore del mese.

Nota: questi passaggi devono essere seguiti chiaramente per ottenere risultati accurati.

Esempio n. 2: utilizzo di DatePart per ottenere le diverse parti di Date

Passaggio 1: vai alla scheda Sviluppatore di Excel, posiziona il cursore su una cella nel foglio di Excel e fai clic sull'opzione "Inserisci" e scegli "Pulsante di comando" sotto Controllo ActiveX come mostrato nella figura.

Passaggio 2: trascina il pulsante e inserisci la didascalia come DatePart sotto le proprietà.

Fare doppio clic su questo pulsante, indirizza al foglio di Visual Basic Editor e viene visualizzato come segue.

Passaggio 3: sviluppare il codice utilizzando DatePart con DateValue come mostrato nella figura.

Codice:

 Private Sub Datepart1_Click () Dim partdate As Variant partdate = DateValue ("8/15/1991") MsgBox partdate MsgBox Datepart ("yyyy", partdate) MsgBox Datepart ("dd", partdate) MsgBox Datepart ("mm", partdate) MsgBox Datepart ("q", partdate) End Sub 

In questo programma, DatePart1 è il nome della macro e partDate è il nome dell'argomento con il tipo di dati "variant". Per la visualizzazione di anno, data, mese e trimestre, il formato viene applicato come "aaaa", "d", "m" e "q". Se si commette un errore nel formato, viene visualizzato il seguente errore.

Passaggio 4: dopo aver eseguito correttamente il debug del programma, eseguire il programma facendo clic sul pulsante Esegui utilizzando il tasto di scelta rapida Excel F5.

Il codice visualizza prima la data completa, quindi dopo aver fatto clic su ogni OK dalla casella msg, mostra rispettivamente il valore dell'anno dopo quel valore Data, Valore mese, Valore quater.

Cose da ricordare su VBA DATEVALUE

Le seguenti cose devono essere ricordate durante l'utilizzo della funzione DateValue in Excel VBA

  • L'errore 13 di runtime con messaggio Type Mismatch viene visualizzato quando la data fornita alla funzione DateValue non è in grado di essere convertita in una data valida. Abbiamo bisogno che la data sia un formato di testo corretto
  • Quando proviamo a ottenere l'unica data dall'argomento stringa con il codice "data msgbox (nome argomento)", viene visualizzato l'errore di mancata corrispondenza del tipo.
  • Possiamo vedere l'output della funzione DateValue senza aprire l'editor VBA. Si fa facendo clic sul pulsante di comando e selezionare la macro creata per il rispettivo programma
  • When DatePart is used to get the values, the appropriate format should be followed. Otherwise, it leads ‘run time error 5’ with message invalid procedure call or argument.