V tej vadnici bomo preučili različne vgrajene funkcije VBA Date.
VBA Datum funkcija
Za vrnitev trenutnega datuma lahko uporabite funkcijo datuma.
Sintaksa funkcije Date je Date (). Nima argumentov.
Naslednja koda prikazuje, kako uporabljati funkcijo datuma:
12345678 | Pod UporabaTheDateFunction ()Zatemni datum kot datumtheDate = Date ()Odpravljanje napak. Natisnite datumEnd Sub |
Rezultat je:
Funkcija VBA Now
S funkcijo Now lahko vrnete trenutni datum in čas.
Sintaksa funkcije Now je Now (). Nima argumentov.
Naslednja koda prikazuje, kako uporabljati funkcijo Now:
12345678 | Pod uporaboTheNowFunction ()Zatemni datum kot datumtheDate = Zdaj ()Odpravljanje napak. Natisnite datumEnd Sub |
Rezultat je:
VBA časovna funkcija
Za vrnitev trenutnega časa lahko uporabite funkcijo časa.
Sintaksa funkcije Time je Time (). Nima argumentov.
Naslednja koda prikazuje, kako uporabljati časovno funkcijo:
12345678 | Pod UporabaTheTimeFunction ()Zatemni čas kot datumtheTime = Time ()Odpravljanje napak. Natisni časEnd Sub |
Rezultat je:
Funkcija dodajanja datuma VBA
S funkcijo DateAdd lahko datumu ali času dodate interval datuma/časa, funkcija pa vrne nastali datum/čas.
Sintaksa funkcije DateAdd je:
DateAdd (interval, številka, datum), kjer:
- Interval - niz, ki določa vrsto intervala za uporabo. Interval je lahko ena od naslednjih vrednosti:
"D" - dan
"Ww" - teden
"W" - delovni dan
"M" - mesec
"Q" - četrtina
"Yyyy" - leto
"Y" - dan v letu
"H" - ura
"N" - minuta
"S" - drugi
- Število - število intervalov, ki jih želite dodati prvotnemu datumu/času.
- Datum - prvotni datum/čas.
Opomba: Ko uporabljate datume v kodi, jih morate obkrožiti s # ali narekovaji.
Naslednja koda prikazuje, kako uporabljati funkcijo DateAdd:
123456789 | Pod UporabaTheDateAddFunction ()Zatemni pozneje Datum kot datumlaterDate = DateAdd ("m", 10, "11/12/2019")Odpravljanje težav.Natisni pozneje DatumEnd Sub |
Rezultat je:
Funkcija VBA DateDiff
S funkcijo DateDiff lahko dobite razliko med dvema datumoma glede na določen časovni interval.
Sintaksa funkcije DateDiff je:
DateDiff (Interval, Date1, Date2, [Firstdayofweek], [Firstweekofyear]), kjer:
- Interval - niz, ki določa vrsto intervala za uporabo. Interval je lahko ena od naslednjih vrednosti:
"D" - dan
"Ww" - teden
"W" - delovni dan
"M" - mesec
"Q" - četrtina
"Yyyy" - leto
"Y" - dan v letu
"H" - ura
"N" - minuta
"S" - drugi
- Datum1 - Vrednost datuma, ki predstavlja prejšnji datum.
- Date2 - Vrednost datuma, ki predstavlja poznejši datum.
- Prvi dan tedna (Neobvezno) - Konstanta, ki določa dan v tednu, ki naj ga funkcija uporabi kot prvi dan v tednu. Če se kot prvi dan v tednu uporablja prazna nedelja. Firstdayofweek je lahko ena od naslednjih vrednosti:
-vbSunday - uporablja nedeljo kot prvi dan v tednu.
-vbMonday - uporablja ponedeljek kot prvi dan v tednu.
-vbTuesday - uporablja torek kot prvi dan v tednu.
-vbWednesday - uporablja sredo kot prvi dan v tednu.
-vbThursday - uporablja četrtek kot prvi dan v tednu.
-vbFriday - uporablja petek kot prvi dan v tednu.
-vbSaturday - soboto uporablja kot prvi dan v tednu.
-vbUseSystemDayOfTheWeek - uporablja prvi dan v tednu, ki je določen v nastavitvah vašega sistema.
- Prvo tedno (Neobvezno) - konstanta, ki določa prvi teden v letu. Če je prazno, se 1. januar uporablja kot prvi teden v letu. Firstweekofyear je lahko ena od naslednjih vrednosti:
-vbFirstJan1 - uporablja teden, ki vsebuje 1. januar.
-vbFirstFourDays - uporablja prvi teden, ki vsebuje vsaj štiri dni v novem letu.
-vbFirstFullWeek - uporablja prvi polni teden v letu.
-vbSystem - uporablja prvi teden v letu, kot je določeno v sistemskih nastavitvah.
Naslednja koda prikazuje, kako uporabljati funkcijo DateDiff:
123456789 | Pod UporabaTheDateDiffFunction ()Zatemnite razliko med dvema datumoma tako dolgotheDifferenceBetweenTwoDates = DateDiff ("q", "11/11/2010", "10/12/2012")Odpravljanje napak. Natisnite razliko med dvema datumomaEnd Sub |
Rezultat je:
Funkcija VBA DatePart
S funkcijo DatePart lahko vrnete del (dan, teden, četrtletje, mesec itd.) Določenega datuma.
Sintaksa funkcije DatePart je:
DatePart (Interval, Date, [Firstdayofweek], [Firstweekofyear]), kjer:
- Interval - niz, ki določa del datuma za vrnitev. Interval je lahko ena od naslednjih vrednosti:
"D" - dan
"Ww" - teden
"W" - delovni dan
"M" - mesec
"Q" - četrtina
"Yyyy" - leto
"Y" - dan v letu
"H" - ura
"N" - minuta
"S" - drugi
- Datum - datum, za katerega želite, da funkcija vrne del.
- Prvi dan tedna (Neobvezno) - Konstanta, ki določa dan v tednu, ki naj ga funkcija uporabi kot prvi dan v tednu. Če se kot prvi dan v tednu uporablja prazna nedelja. Firstdayofweek je lahko ena od naslednjih vrednosti:
-vbSunday - uporablja nedeljo kot prvi dan v tednu.
-vbMonday - uporablja ponedeljek kot prvi dan v tednu.
-vbTuesday - torek uporablja kot prvi dan v tednu.
-vbWednesday - uporablja sredo kot prvi dan v tednu.
-vbThursday - četrtek uporablja kot prvi dan v tednu.
-vbFriday - uporablja petek kot prvi dan v tednu.
-vbSaturday - soboto uporablja kot prvi dan v tednu.
-vbUseSystemDayOfTheWeek - uporablja prvi dan v tednu, ki je določen v nastavitvah vašega sistema.
- Prvo tedno (Neobvezno) - konstanta, ki določa prvi teden v letu. Če je prazno, se 1. januar uporablja kot prvi teden v letu. Firstweekofyear je lahko ena od naslednjih vrednosti:
-vbFirstJan1 - uporablja teden, ki vsebuje 1. januar.
-vbFirstFourDays - uporablja prvi teden, ki vsebuje vsaj štiri dni v novem letu.
-vbFirstFullWeek - uporablja prvi polni teden v letu.
-vbSystem - uporablja prvi teden v letu, kot je določeno v sistemskih nastavitvah.
Naslednja koda prikazuje, kako uporabljati funkcijo DatePart:
123456789 | Pod UporabaTheDatePartFunction ()Zatemni del datuma kot celo številothePartOfTheDate = DatePart ("llll", "12/12/2009")Odpravljanje napak Natisnite del datumaEnd Sub |
Rezultat je:
VBA DateSerial funkcija
Funkcija VBA DateSerial vnese leto, mesec in dan ter vrne datum.
Sintaksa funkcije DateSerial je:
DateSerial (leto, mesec, dan), kjer:
- Leto - celoštevilčna vrednost med 100 in 9999, ki predstavlja leto.
- Mesec - celoštevilska vrednost, ki predstavlja mesec.
- Dan - celoštevilčna vrednost, ki predstavlja dan.
Naslednja koda prikazuje, kako uporabljati funkcijo DateSerial:
123456789 | Pod UporabaTheDateSerialFunction ()Zatemni datum kot datumtheDate = DateSerial (2010, 11, 10)Odpravljanje napak. Natisnite datumEnd Sub |
Rezultat je:
VBA DateValue funkcija
Funkcija DateValue vrne datum, ko dobi niz, ki predstavlja datum.
Sintaksa funkcije DateValue je:
DateValue (Datum), kjer:
- Datum - niz, ki predstavlja datum.
Naslednja koda prikazuje, kako uporabljati funkcijo DateValue:
123456789 | Pod UporabaTheDateValueFunction ()Zatemni datum kot datumtheDate = DateValue ("29. oktober 2010")Odpravljanje napak. Natisnite datumEnd Sub |
Rezultat je:
Dnevna funkcija VBA
S funkcijo Dan lahko vrnete dan vnosnega datuma.
Sintaksa dnevne funkcije je:
Dan (Date_value), kjer:
- Date_value - Datum, iz katerega želite izvleči dan.
Naslednja koda prikazuje, kako uporabljati dnevno funkcijo:
123456789 | Pod UporabaTheDayFunction ()Zatemni dan kot celo številotheDay = Day ("10/12/2010")Debug.Natisni danEnd Sub |
Rezultat je:
Funkcija ure VBA
S funkcijo ure lahko vrnete uro vnosnega časa.
Sintaksa funkcije Hour je:
Ura (čas), kjer:
- Čas - čas, iz katerega želite izvleči uro.
Naslednja koda prikazuje, kako uporabljati funkcijo ure:
123456789 | Pod uporaboTheHourFunction ()Zatemni uro kot celo številotheHour = Hour ("2:14:17 AM")Odpravljanje težav Natisnite uroEnd Sub |
Rezultat je:
VBA minutna funkcija
Funkcijo minut lahko uporabite za vrnitev minutne vrednosti vnosnega časa.
Sintaksa funkcije minute je:
Minuta (čas), kjer:
- Čas - čas, iz katerega želite izvleči minuto.
Naslednja koda prikazuje, kako uporabljati funkcijo minute:
123456789 | Sub UsingTheMinuteFunction ()Zatemni vrednost minute kot celo številotheMinuteValue = Minute ("2:14:17 AM")Odpravljanje napak. Natisnite minutoValueEnd Sub |
Rezultat je:
Druga funkcija VBA
Drugo funkcijo lahko uporabite za vrnitev druge vrednosti vhodnega časa.
Sintaksa druge funkcije je:
Drugi (čas), kjer:
- Čas - čas, iz katerega želite izvleči drugo vrednost.
Naslednja koda prikazuje, kako uporabljati drugo funkcijo:
123456789 | PodporaTheSecondFunction ()Zatemnite drugo vrednost kot celo številotheSecondValue = Second ("2:14:17 AM")Odpravljanje napak. Natisnite drugo vrednostEnd Sub |
Rezultat je:
Mesečna funkcija VBA
Za vrnitev meseca vnosnega datuma lahko uporabite funkcijo meseca.
Sintaksa funkcije Mesec je:
Mesec (Date_value), kjer:
- Date_value - datum, iz katerega želite izvleči mesec.
Naslednja koda prikazuje, kako uporabljati mesečno funkcijo:
12345678 | Pod uporaboTheMonthFunction ()Zatemni mesec kot celo številotheMonth = Month ("18.11.2010")Odpravljanje napak. Natisnite mesecEnd Sub |
Rezultat je:
Funkcija VBA Mesečno ime
S funkcijo MonthName lahko vrnete ime meseca iz vnesene številke meseca.
Sintaksa funkcije MonthName je:
Ime meseca (Število_meseca, [Skrajšano]), kjer:
- Število_meseca - celoštevilska vrednost med 1 in 12.
- Skrajšajte (Neobvezno) - Določa, ali naj se ime meseca skrajša. Če je prazno, se uporabi privzeta vrednost False.
12345678 | Pod UporabaTheMonthNameFunction ()Zatemni imeMeseca kot niztheMonthName = Ime meseca (12, res)Odpravljanje napak Natisnite ime mesecaEnd Sub |
Rezultat je:
VBA TimeSerial funkcija
Funkcija TimeSerial vnese uro, minuto in sekundo ter vrne čas.
Sintaksa funkcije TimeSerial je:
TimeSerial (ura, minuta, sekunda), kjer:
- Ura - celoštevilčna vrednost med 0 in 23, ki predstavlja vrednost ure.
- Minuta - celoštevilčna vrednost med 0 in 59, ki predstavlja vrednost minute.
- Druga - celoštevilčna vrednost med 0 in 59, ki predstavlja drugo vrednost.
Naslednja koda prikazuje, kako uporabljati funkcijo TimeSerial:
12345678 | Sub UsingTheTimeSerialFunction ()Zatemni čas kot datumtheTime = TimeSerial (1, 10, 15)Odpravljanje napak. Natisni časEnd Sub |
Rezultat je:
Funkcija VBA TimeValue
Funkcija TimeValue vrne čas iz predstavitve niza datuma ali časa.
Sintaksa funkcije TimeValue je:
TimeValue (čas), kjer:
- Čas - niz, ki predstavlja čas.
Naslednja koda prikazuje, kako uporabljati funkcijo TimeValue:
12345678 | Pod uporaboTheTimeValueFunction ()Zatemni čas kot datumtheTime = TimeValue ("22:10:17")Odpravljanje napak. Natisni časEnd Sub |
Rezultat je:
VBA tedenska funkcija
S funkcijo tedenski dan lahko vrnete celo število od 1 do 7, ki predstavlja dan v tednu od vnosnega datuma.
Sintaksa funkcije Weekday je:
Dan v tednu (datum, [prvi dan tedna]), kjer:
- Datum - datum, iz katerega želite izvleči vrednost dneva v tednu.
- Prvi dan tedna (Neobvezno) - Konstanta, ki določa dan v tednu, ki naj ga funkcija uporabi kot prvi dan v tednu. Če se kot prvi dan v tednu uporablja prazna nedelja. Firstdayofweek je lahko ena od naslednjih vrednosti:
-vbSunday - uporablja nedeljo kot prvi dan v tednu.
-vbMonday - uporablja ponedeljek kot prvi dan v tednu.
-vbTuesday - torek uporablja kot prvi dan v tednu.
-vbWednesday - uporablja sredo kot prvi dan v tednu.
-vbThursday - uporablja četrtek kot prvi dan v tednu.
-vbFriday - uporablja petek kot prvi dan v tednu.
-vbSaturday - soboto uporablja kot prvi dan v tednu.
-vbUseSystemDayOfTheWeek - uporablja prvi dan v tednu, ki je določen v nastavitvah vašega sistema.
Naslednja koda prikazuje, kako uporabljati funkcijo tedenski:
1234567 | Sub UsingTheWeekdayFunction ()Zatemni tedenski dan kot celo številotheWeekDay = Dan v tednu ("20.11.2019")Odpravljanje težav Natisnite tedenski danEnd Sub |
Rezultat je:
Funkcija VBA WeekdayName
S funkcijo WeekdayName lahko vrnete ime tedenskega dne iz vnesene številke tedna.
Sintaksa funkcije WeekdayName je:
WeekdayName (Weekday, [Skrajšano], [Firstdayoftheweek]), kjer:
- Delovni dan - celo število med 1 in 7.
- Skrajšajte (Neobvezno) -Določa, ali je treba ime tedna skrajšati. Če je prazno, se uporabi privzeta vrednost False.
- Prvi dan tedna (Neobvezno) - Konstanta, ki določa dan v tednu, ki naj ga funkcija uporabi kot prvi dan v tednu. Če se kot prvi dan v tednu uporablja prazna nedelja. Firstdayofweek je lahko ena od naslednjih vrednosti:
-vbSunday - uporablja nedeljo kot prvi dan v tednu.
-vbMonday - uporablja ponedeljek kot prvi dan v tednu.
-vbTuesday - torek uporablja kot prvi dan v tednu.
-vbWednesday - uporablja sredo kot prvi dan v tednu.
-vbThursday - uporablja četrtek kot prvi dan v tednu.
-vbFriday - uporablja petek kot prvi dan v tednu.
-vbSaturday - soboto uporablja kot prvi dan v tednu.
-vbUseSystemDayOfTheWeek - uporablja prvi dan v tednu, ki je določen v nastavitvah vašega sistema.
12345678 | Sub UsingTheWeekdayNameFunction ()Zatemni ime tedna kot niztheWeekdayName = Ime tedna (4)Odpravljanje napak Natisnite ime tednaEnd Sub |
Rezultat je:
Letošnja funkcija VBA
S funkcijo Year lahko vrnete leto vnosnega datuma.
Sintaksa funkcije leta je:
Leto (Date_value), kjer:
- Date_value - datum, iz katerega želite izvleči leto.
Naslednja koda prikazuje, kako uporabljati funkcijo za leto:
12345678 | Pod uporaboTheYearFunction ()Zatemni leto kot celo številotheYear = Leto ("11/12/2010")Odpravljanje težav Natisni letoEnd Sub |
Rezultat je:
Primerjava datumov v VBA
Datume lahko primerjate z operaterjema>, <in = v VBA. Naslednja koda prikazuje, kako primerjati dva datuma v VBA.
12345678910111213141516171819 | Podporedni datumi ()Zatemni datum Ena kot datumZatemni datum Dva kot datumdateOne = "10.10.2010"dateTwo = "11.11.2010"Če dateOne> dateTwo ThenDebug.Print "dateOne is the later date"ElseIf dateOne = dateTwo NatoDebug.Print "Dva datuma sta enaka"Sicer paDebug.Print "dateTwo is a later date"Konec ČeEnd Sub |
Več o tem, kako formatirate datume kot nize, si oglejte v tej vadnici.