Come utilizzare la funzione vba datepart?

La funzione VBA DATEPART è elencata nella categoria data delle funzioni VBA. Quando lo utilizzi nel codice VBA, può restituire il valore del giorno da un valore di data o ora . In termini semplici, puoi ottenere secondi, minuti, ore, giorni, mesi o anni da una data o da un valore temporale.

Sintassi

DatePart(intervallo, data, [primogiornodellasettimana, [primasettimanadell’anno]])

argomenti

  • Intervallo : una stringa per specificare quale parte della data deve essere restituita nel risultato.
  • Data : la data a partire dalla quale deve ritornare la parte della data.
  • [FirstDayOfWeek] : una stringa per definire il primo giorno della settimana [Questo è un argomento facoltativo e se omesso vbSunday per impostazione predefinita].
    • vbUseSystemDayOfWeek – A seconda delle impostazioni di sistema.
    • vbDomenica – Domenica
    • vblunday – lunedì
    • vbMartedì – Martedì
    • vbMercoledì – Mercoledì
    • vbGiovedi – Giovedì
    • vbVenerdì – Venerdì
    • vbSabato – Sabato
  • [FirstWeekOfYear] : una stringa per definire la prima settimana dell’anno [Questo è un argomento facoltativo e se omesso vbFirstJan1 per impostazione predefinita].
    • vbSystem – A seconda delle impostazioni del sistema.
    • vbFirstJan1 – La settimana in cui cade il 1° giorno di gennaio.
    • vbFirstFourDays – La prima settimana che contiene almeno quattro giorni nel nuovo anno.
    • vbFirstFullWeek – La prima settimana intera del nuovo anno.

Esempio

Per capire praticamente come utilizzare la funzione VBA DATEPART è necessario seguire l’esempio seguente in cui abbiamo scritto un codice vba utilizzandola:

example-vba-datepart-function
 Sub example_DATEPART() Range("A2").Value = DatePart("d", Range("A1")) Range("A3").Value = DatePart("h", Range("A1")) Range("A4").Value = DatePart("m", Range("A1")) Range("A5").Value = DatePart("n", Range("A1")) Range("A6").Value = DatePart("q", Range("A1")) Range("A7").Value = DatePart("s", Range("A1")) Range("A8").Value = DatePart("w", Range("A1")) Range("A9").Value = DatePart("ww", Range("A1")) Range("A11").Value = DatePart("y", Range("A1")) Range("A12").Value = DatePart("yyyy", Range("A1")) End Sub

Nel codice sopra abbiamo utilizzato un intervallo diverso in DATEPART:

  • ‘d’ per ottenere il giorno e il risultato è stato 15.
  • ‘h’ per ottenere le ore ma poiché non abbiamo l’ora nella data, il risultato è stato restituito 0.
  • ‘m’ per ottenere il mese e il risultato è 1.
  • ‘n’ per ottenere i minuti ma poiché non abbiamo l’ora nella data, il risultato è stato restituito 0.
  • “q” per ottenere il quarto e il risultato è 1.
  • ‘s’ per ottenere i secondi ma poiché non abbiamo tempo nella data, il risultato è stato restituito 0.
  • ‘w’ per ottenere il giorno della settimana e restituisce 3.
  • ‘ww’ per ottenere la settimana dell’anno ed è tornata 3.
  • ‘y’ per ottenere il giorno dell’anno e restituisce 15.
  • “aaaa” per ottenere l’anno e tornare al 2019.

Commenti

  • Se viene fornita una data senza l’anno, verrà utilizzato l’anno corrente.
  • Se il valore specificato è un valore diverso da una data o una data che non può essere riconosciuta come data, VBA restituirà l’errore di runtime 13.
  • L’impostazione dell’argomento “primogiornodellasettimana” funziona solo quando l'”intervallo” è “w” o “ww”.

Aggiungi un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *