Funzioni data VBA

Sommario

In questo tutorial, esamineremo le diverse funzioni di data VBA integrate.

Funzione data VBA

È possibile utilizzare la funzione Data per restituire la data corrente.

La sintassi della funzione Date è Date(). Non ha argomenti.

Il codice seguente mostra come utilizzare la funzione Data:

12345678 Sub UsingTheDateFunction()Dim theData As DatetheDate = Data()Debug.Stampa la dataFine sottotitolo

Il risultato è:

Funzione VBA Now

È possibile utilizzare la funzione Now per restituire la data e l'ora correnti.

La sintassi della funzione Now è Now(). Non ha argomenti.

Il codice seguente mostra come utilizzare la funzione Now:

12345678 Sub UsingTheNowFunction()Dim theData As DatetheDate = Now()Debug.Stampa la dataFine sottotitolo

Il risultato è:

Funzione tempo VBA

È possibile utilizzare la funzione Ora per restituire l'ora corrente.

La sintassi della funzione Time è Time(). Non ha argomenti.

Il codice seguente mostra come utilizzare la funzione Time:

12345678 Sub UsingTheTimeFunction()Dim theTime As DatetheTime = Time()Debug.Stampa l'oraFine sottotitolo

Il risultato è:

Funzione VBA DateAdd

È possibile utilizzare la funzione DateAdd per aggiungere un intervallo di data/ora a una data o un'ora e la funzione restituirà la data/ora risultante.

La sintassi della funzione DateAdd è:

DateAdd(Intervallo, Numero, Data) dove:

  • Interval - Una stringa che specifica il tipo di intervallo da utilizzare. L'intervallo può essere uno dei seguenti valori:

“d” - giorno
“ww” - settimana
“w” - giorno della settimana
“m” - mese
“q” - quarto
"aaaa" - anno
"y" - giorno dell'anno
“h” - ora
“n” - minuto
“s” - secondo

  • Numero - Il numero di intervalli che si desidera aggiungere alla data/ora originale.
  • Data - La data/ora originale.

Nota: quando si utilizzano le date nel codice, è necessario racchiuderle tra # o virgolette.

Il codice seguente mostra come utilizzare la funzione DateAdd:

123456789 Sub UsingTheDateAddFunction()Oscura dopo Data come datalaterDate = DateAdd("m", 10, "11/12/2019")Debug.Stampa dopo DataFine sottotitolo

Il risultato è:

Funzione VBA DateDiff

È possibile utilizzare la funzione DateDiff per ottenere la differenza tra due date, in base a un intervallo di tempo specificato.

La sintassi della funzione DateDiff è:

DateDiff(Interval, Date1, Date2, [Firstdayofweek], [Firstweekofyear]) dove:

  • Interval - Una stringa che specifica il tipo di intervallo da utilizzare. L'intervallo può essere uno dei seguenti valori:

“d” - giorno
“ww” - settimana
“w” - giorno della settimana
“m” - mese
“q” - quarto
"aaaa" - anno
"y" - giorno dell'anno
“h” - ora
“n” - minuto
“s” - secondo

  • Date1 - Un valore di data che rappresenta la data precedente.
  • Date2 - Un valore di data che rappresenta la data successiva.
  • Primo giorno della settimana (Opzionale) - Una costante che specifica il giorno della settimana che la funzione deve utilizzare come primo giorno della settimana. Se vuoto Sunday viene utilizzato come primo giorno della settimana. Firstdayofweek può essere uno dei seguenti valori:

-vbSunday - usa la domenica come primo giorno della settimana.
-vbMonday - usa il lunedì come primo giorno della settimana.
-vbTuesday: utilizza il martedì come primo giorno della settimana.
-vbWednesday: utilizza mercoledì come primo giorno della settimana.
-vbThursday: utilizza giovedì come primo giorno della settimana.
-vbFriday: utilizza il venerdì come primo giorno della settimana.
-vbSaturday: utilizza il sabato come primo giorno della settimana.
-vbUseSystemDayOfTheWeek: utilizza il primo giorno della settimana specificato dalle impostazioni del sistema.

  • Prima settimana dell'anno (Opzionale) - Una costante che specifica la prima settimana dell'anno. Se vuoto, la settimana del 1° gennaio viene utilizzata come prima settimana dell'anno. La prima settimana dell'anno può essere uno dei seguenti valori:

-vbFirstJan1 - utilizza la settimana contenente il 1° gennaio.
-vbFirstFourDays: utilizza la prima settimana che contiene almeno quattro giorni del nuovo anno.
-vbFirstFullWeek - utilizza la prima settimana completa dell'anno.
-vbSystem: utilizza la prima settimana dell'anno come specificato dalle impostazioni di sistema.

Il codice seguente mostra come utilizzare la funzione DateDiff:

123456789 Sub UsingTheDateDiffFunction()Dim theDifferenceBetween TwoDates as LongtheDifferenceBetweenTwoDate = DateDiff("q", "11/11/2010", "12/10/2012")Debug.Stampa la differenza tra due dateFine sottotitolo

Il risultato è:

Funzione VBA DatePart

È possibile utilizzare la funzione DatePart per restituire una parte (giorno, settimana, trimestre, mese ecc.) di una determinata data.

La sintassi della funzione DatePart è:

DatePart(Interval, Date,[Firstdayofweek], [Firstweekofyear]) dove:

  • Interval - Una stringa che specifica la parte della data da restituire. L'intervallo può essere uno dei seguenti valori:

“d” - giorno
“ww” - settimana
“w” - giorno della settimana
“m” - mese
“q” - quarto
"aaaa" - anno
"y" - giorno dell'anno
“h” - ora
“n” - minuto
“s” - secondo

  • Data: la data di cui si desidera che la funzione restituisca una parte.
  • Primo giorno della settimana (Opzionale) - Una costante che specifica il giorno della settimana che la funzione deve utilizzare come primo giorno della settimana. Se vuoto Sunday viene utilizzato come primo giorno della settimana. Firstdayofweek può essere uno dei seguenti valori:

-vbSunday - usa la domenica come primo giorno della settimana.
-vbMonday - usa il lunedì come primo giorno della settimana.
-vbTuesday: utilizza il martedì come primo giorno della settimana.
-vbWednesday: utilizza mercoledì come primo giorno della settimana.
-vbThursday: utilizza giovedì come primo giorno della settimana.
-vbFriday: utilizza il venerdì come primo giorno della settimana.
-vbSaturday: utilizza il sabato come primo giorno della settimana.
-vbUseSystemDayOfTheWeek: utilizza il primo giorno della settimana specificato dalle impostazioni del sistema.

  • Prima settimana dell'anno (Opzionale) - Una costante che specifica la prima settimana dell'anno. Se vuoto, la settimana del 1° gennaio viene utilizzata come prima settimana dell'anno. La prima settimana dell'anno può essere uno dei seguenti valori:

-vbFirstJan1 - utilizza la settimana contenente il 1° gennaio.
-vbFirstFourDays: utilizza la prima settimana che contiene almeno quattro giorni del nuovo anno.
-vbFirstFullWeek - utilizza la prima settimana completa dell'anno.
-vbSystem: utilizza la prima settimana dell'anno come specificato dalle impostazioni di sistema.

Il codice seguente mostra come utilizzare la funzione DatePart:

123456789 Sub UsingTheDatePartFunction()Dim thePartOfTheDate come numero interothePartOfTheDate = DatePart("yyyy", "12/12/2009")Debug.Stampa thePartOfTheDateFine sottotitolo

Il risultato è:

Funzione VBA DateSerial

La funzione VBA DateSerial accetta anno, mese e giorno di input e restituisce una data.

La sintassi della funzione DateSerial è:

DateSerial(Year, Month, Day) dove:

  • Anno - Un valore intero compreso tra 100 e 9999 che rappresenta l'anno.
  • Mese - Un valore intero che rappresenta il mese.
  • Giorno - Un valore intero che rappresenta il giorno.

Il codice seguente mostra come utilizzare la funzione DateSerial:

123456789 Sub UsingTheDateSerialFunction()Dim theData As DatetheDate = DateSerial(2010, 11, 10)Debug.Stampa la dataFine sottotitolo

Il risultato è:

Funzione DateValue VBA

La funzione DateValue restituisce una data quando viene fornita una rappresentazione di stringa di una data.

La sintassi della funzione DateValue è:

DateValue(Date) dove:

  • Data - Una stringa che rappresenta la data.

Il codice seguente mostra come utilizzare la funzione DateValue:

123456789 Sub UsingTheDateValueFunction()Dim theData As DatetheDate = DateValue("29 ottobre 2010")Debug.Stampa la dataFine sottotitolo

Il risultato è:

Funzione giorno VBA

È possibile utilizzare la funzione Giorno per restituire il giorno di una data inserita.

La sintassi della funzione giorno è:

Giorno(Valore_data) dove:

  • Date_value - La data da cui si desidera estrarre il giorno.

Il codice seguente mostra come utilizzare la funzione giorno:

123456789 Sub UsingTheDayFunction()Dim theDay As IntegertheDay = Day("10/12/2010")Debug.Stampa il giornoFine sottotitolo

Il risultato è:

Funzione ora VBA

È possibile utilizzare la funzione Hour per restituire l'ora di un orario immesso.

La sintassi della funzione ora è:

Ora(Ora) dove:

  • Ora - L'ora da cui si desidera estrarre l'ora.

Il codice seguente mostra come utilizzare la funzione Hour:

123456789 Sub UsingTheHourFunction()Dim theHour As IntegertheHour = Hour("2:14:17")Debug.Stampa l'oraFine sottotitolo

Il risultato è:

Funzione minuti VBA

È possibile utilizzare la funzione Minuti per restituire il valore dei minuti di un orario immesso.

La sintassi della funzione minuti è:

Minuto(Tempo) dove:

  • Ora - L'ora da cui si desidera estrarre il valore dei minuti.

Il codice seguente mostra come utilizzare la funzione Minute:

123456789 Sub UsingTheMinuteFunction()Dim theMinuteValue As IntegertheMinuteValue = Minute("2:14:17 AM")Debug.Print theMinuteValueFine sottotitolo

Il risultato è:

Seconda funzione VBA

È possibile utilizzare la seconda funzione per restituire il secondo valore di un tempo di input.

La sintassi della seconda funzione è:

Secondo (tempo) dove:

  • Ora - L'ora da cui si desidera estrarre il secondo valore.

Il codice seguente mostra come utilizzare la seconda funzione:

123456789 Sub UsandoLaSecondaFunzione()Dim theSecondValue As IntegertheSecondValue = Second("2:14:17")Debug.Stampa ilSecondoValoreFine sottotitolo

Il risultato è:

Funzione mese VBA

È possibile utilizzare la funzione Mese per restituire il mese di una data inserita.

La sintassi della funzione mese è:

Mese(Valore_data) dove:

  • Date_value - La data da cui si desidera estrarre il mese.

Il codice seguente mostra come utilizzare la funzione mese:

12345678 Sub UsingTheMonthFunction()Dim theMonth As IntegertheMonth = Month("18/11/2010")Debug.Stampa il meseFine sottotitolo

Il risultato è:

Funzione MonthName VBA

È possibile utilizzare la funzione MonthName per restituire il nome di un mese da un numero di mese fornito dall'input.

La sintassi della funzione MonthName è:

MonthName(Number_of_month, [Abbreviate]) dove:

  • Number_of_month - Un valore intero compreso tra 1 e 12.
  • Abbreviato (Opzionale) - Specifica se il nome del mese deve essere abbreviato. Se vuoto, viene utilizzato il valore predefinito False.
12345678 Sub UsingTheMonthNameFunction()Dim theMonthName As StringtheMonthName = MonthName(12, True)Debug.Stampa theMonthNameFine sottotitolo

Il risultato è:

Funzione TimeSerial VBA

La funzione TimeSerial richiede un'ora, un minuto e un secondo di input e restituisce un'ora.

La sintassi della funzione TimeSerial è:

TimeSerial(Ore, Minuti, Secondi) dove:

  • Ora - Un valore intero compreso tra 0 e 23 che rappresenta il valore dell'ora.
  • Minuto - Un valore intero compreso tra 0 e 59 che rappresenta il valore dei minuti.
  • Secondo - Un valore intero compreso tra 0 e 59 che rappresenta il secondo valore.

Il codice seguente mostra come utilizzare la funzione TimeSerial:

12345678 Sub UsingTheTimeSerialFunction()Dim theTime As DatetheTime = TimeSerial(1, 10, 15)Debug.Stampa l'oraFine sottotitolo

Il risultato è:

Funzione TimeValue VBA

La funzione TimeValue restituisce un Time da una rappresentazione di stringa di una data o un'ora.

La sintassi della funzione TimeValue è:

TimeValue(Time) dove:

  • Ora - Una stringa che rappresenta l'ora.

Il codice seguente mostra come utilizzare la funzione TimeValue:

12345678 Sub UsingTheTimeValueFunction()Dim theTime As DatetheTime = TimeValue("22:10:17")Debug.Stampa l'oraFine sottotitolo

Il risultato è:

Funzione giorno della settimana VBA

È possibile utilizzare la funzione Weekday per restituire un numero intero compreso tra 1 e 7 che rappresenta un giorno della settimana da una data di input.

La sintassi della funzione Weekday è:

Weekday(Date, [Firstdayofweek]) dove:

  • Data: la data da cui si desidera estrarre il valore del giorno della settimana.
  • Primo giorno della settimana (Opzionale) - Una costante che specifica il giorno della settimana che la funzione deve utilizzare come primo giorno della settimana. Se vuoto, viene utilizzata la domenica come primo giorno della settimana. Firstdayofweek può essere uno dei seguenti valori:

-vbSunday - usa la domenica come primo giorno della settimana.
-vbMonday - usa il lunedì come primo giorno della settimana.
-vbTuesday: utilizza il martedì come primo giorno della settimana.
-vbWednesday: utilizza mercoledì come primo giorno della settimana.
-vbThursday: utilizza giovedì come primo giorno della settimana.
-vbFriday: utilizza il venerdì come primo giorno della settimana.
-vbSaturday: utilizza il sabato come primo giorno della settimana.
-vbUseSystemDayOfTheWeek: utilizza il primo giorno della settimana specificato dalle impostazioni del sistema.

Il codice seguente mostra come utilizzare la funzione Weekday:

1234567 Sub UsingTheWeekdayFunction()Dim theWeekDay As IntegertheWeekDay = Weekday("11/20/2019")Debug.Stampa theWeekDayFine sottotitolo

Il risultato è:

Funzione WeekdayName VBA

È possibile utilizzare la funzione WeekdayName per restituire il nome di un giorno della settimana da un numero del giorno della settimana fornito dall'input.

La sintassi della funzione WeekdayName è:

WeekdayName(Weekday, [Abbreviate], [Firstdayoftheweek]) dove:

  • Weekday - Un valore intero compreso tra 1 e 7.
  • Abbreviato (Opzionale) -Specifica se il nome del giorno della settimana deve essere abbreviato. Se vuoto, viene utilizzato il valore predefinito False.
  • Primo giorno della settimana (Opzionale) - Una costante che specifica il giorno della settimana che la funzione deve utilizzare come primo giorno della settimana. Se vuoto Sunday viene utilizzato come primo giorno della settimana. Firstdayofweek può essere uno dei seguenti valori:

-vbSunday - usa la domenica come primo giorno della settimana.
-vbMonday - usa il lunedì come primo giorno della settimana.
-vbTuesday: utilizza il martedì come primo giorno della settimana.
-vbWednesday: utilizza mercoledì come primo giorno della settimana.
-vbThursday: utilizza giovedì come primo giorno della settimana.
-vbFriday: utilizza il venerdì come primo giorno della settimana.
-vbSaturday: utilizza il sabato come primo giorno della settimana.
-vbUseSystemDayOfTheWeek: utilizza il primo giorno della settimana specificato dalle impostazioni del sistema.

12345678 Sub UsingTheWeekdayNameFunction()Dim theWeekdayName As StringtheWeekdayName = WeekdayName(4)Debug.Stampa theWeekdayNameFine sottotitolo

Il risultato è:

Funzione anno VBA

È possibile utilizzare la funzione Anno per restituire l'anno di una data di input.

La sintassi della funzione anno è:

Anno (valore_data) dove:

  • Date_value - La data da cui si desidera estrarre l'anno.

Il codice seguente mostra come utilizzare la funzione Anno:

12345678 Sub UsingTheYearFunction()Dim theYear As IntegertheYear = Year("11/12/2010")Debug.Stampa l'annoFine sottotitolo

Il risultato è:

Confrontare le date in VBA

Puoi confrontare le date utilizzando gli operatori >, < e = in VBA. Il codice seguente mostra come confrontare due date in VBA.

12345678910111213141516171819 Sotto Confronto Date()Dim dateUno come dataDim dateDue As DatedataUno = "10/10/2010"dataDue = "11/11/2010"Se dateOne > dateTwo ThenDebug.Print "dateOne è la data successiva"ElseIf dateOne = dateTwo ThenDebug.Print "Le due date sono uguali"AltroDebug.Print "dateTwo è la data successiva"Finisci seFine sottotitolo

Scopri di più su come formattare le date come stringhe visualizzando questo tutorial.

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

wave wave wave wave wave