Satura rādītājs
Microsoft Visual Basic lietojumprogrammā datuma funkcijas vai jebkādi ar datumu saistīti jēdzieni ir būtiski, lai veiktu dažādas operācijas jūsu datu kopā. Jūs varat nonākt dažādās situācijās, kad jums būs jāizmanto šīs funkcijas. Šajā pamācībā jūs uzzināsiet par VBA funkciju Date ar piemērotiem piemēriem un atbilstošām ilustrācijām. Mēs arī nodrošināsim jums vairākas datuma funkcijas.ko varat ieviest savā darblapā.
Lejupielādēt Practice Workbook
VBA Date.xlsm lietojumi
Ievads VBA datuma funkcijā
Excel kategorizē Datumus Datums/laiks Tā ir iebūvēta funkcija. Mēs varam to izmantot VBA makros, lai veiktu jebkādas ar datumu saistītas darbības.
Pirms sākat strādāt ar funkciju Date, jums ir jāzina par Datuma mainīgie VBA .
⏺ Sintakse
Datums()⏺ Argumenti Paskaidrojumi
Argumentu nav.
⏺ Atgriešanās
Atgriež pašreizējo datumu.
⏺ Pieejams
Excel Office 365, Excel 2019, Excel 2016, Excel 2013, Excel 2011, Excel 2011 priekš Mac, Excel 2010, Excel 2007, Excel 2003, Excel 2003, Excel XP, Excel 2000
⏺ Piemērs
Kā jūs zināt, argumentu nav, jūs varat tikai ievadīt šādu tekstu:
Sub vba_date() Dim current_date As Date current_date = Date MsgBox current_date End Sub
Strādājot ar funkciju Date, VBA kodos, piemēram, šajā piemērā, mēs nenorādām nevienu iekavi.
Izvades :
12 datēšanas funkcijas VBA, kas jums būtu jāiemācās
Turpmākajās sadaļās mēs jums parādīsim dažas papildu datuma funkcijas, kuras varat izmantot daudzos VBA nolūkos. Izlasiet šīs sadaļas, lai uzzinātu visus iespējamos veidus, kā strādāt ar datumu VBA. Iesakām tās saglabāt savā arsenālā. Tas noteikti uzlabos jūsu zināšanas.
1. DateAdd funkcija kā datums programmā VBA
VBA programmā mēs izmantojam funkciju DateAdd, lai pievienotu dienas konkrētam datumam. Pēc tam tā atgriezīs iegūto datumu.
Sintakse:
DateAdd(intervāls, skaitlis, datums)
Argumenti:
intervāls: Tas ir Obligāti. Virknes izteiksme ir laika intervāls, ko vēlaties pievienot.
numurs: Vajadzīgs. Tā ir skaitliska izteiksme, kas ir intervālu skaits, kurus vēlaties pievienot. Tā var būt pozitīva (lai iegūtu datumus nākotnē) vai negatīva (lai iegūtu datumus pagātnē).
datums: Sākotnējais datums/laiks.
Tagad intervāls argumentiem var būt šādi iestatījumi:
yyyy - Gads
q - Ceturtdaļa
m - Mēnesis
y - Gada diena
d - Diena
w - Nedēļas diena
ww - Nedēļa
h - Stunda
n - Minūtes
s - Otrais
Koda fragments :
Sub dateadd_function() Dim result_Date As Date result_Date = DateAdd("d", 15, "1/31/2022") MsgBox result_Date End Sub
Izvades rezultāts:
Kā redzat, tas pievienoja 15 datumus pašreizējā datumā VBA.
Lasīt vairāk: Kā lietot IsDate funkciju VBA (3 piemēri)
2. DateDiff funkcija VBA
Funkcija DateDiff atgriež variantu (Long), kas nosaka laika intervālu skaitu starp diviem norādītajiem datumiem.
Sintakse :
DateDiff(intervāls, date1, date2, [ nedēļas pirmā diena, [ gada pirmā nedēļa ]]] )
Argumenti:
intervāls: Tas ir Obligāti. Virknes izteiksme ir laika intervāls, ko vēlaties pievienotVirknes izteiksme ir laika intervāls, ko izmantojat, lai aprēķinātu atšķirību starp diviem datumiem.
date1,date2 : Obligāti; Variant (Date). Divi datumi, kurus vēlaties izmantot aprēķinā.
nedēļas pirmā diena: Pēc izvēles. Konstante, kas nosaka nedēļas pirmo dienu. Ja nav noteikta, tiek pieņemta svētdiena.
gada pirmānedēļa: Pēc izvēles. Konstante, kas nosaka gada pirmo nedēļu. Ja nav iestatīta, par pirmo nedēļu tiek uzskatīta nedēļa, kurā parādās 1. janvāris.
Tagad intervāls argumentiem var būt šādi iestatījumi:
yyyy - Gads
q - Ceturtdaļa
m - Mēnesis
y - Gada diena
d - Diena
w - Nedēļas diena
ww - Nedēļa
h - Stunda
n - Minūtes
s - Otrais
Portāls nedēļas pirmā diena argumentam ir šādi iestatījumi:
vbSunday - izmanto svētdienu kā galveno nedēļas dienu.
vbPirmdiena - nodarbina pirmdienu kā nedēļas pirmo dienu.
vbTuesday - otrdiena ir nedēļas pirmā diena.
vbTrešdiena - nodarbina trešdienu kā nedēļas pirmo dienu.
vbCeturtdiena - ceturtdiena ir drīzāk nedēļas diena.
vbPiektdiena - nodarbina piektdienu kā nedēļas pirmo dienu.
vbSaturday - sestdiena ir nedēļas pirmā diena.
vbUseSystemDayOfTheWeek - izmanto nedēļas pirmo dienu, kas noteikta ierīces iestatījumos.
Portāls gada pirmānedēļa ir šādi iestatījumi:
vbFirstJan1 - izmanto nedēļu, kas sākas 1. janvārī.
vbFirstFourDays - nodarbina pirmo nedēļu, kurā jaunajā gadā ir vismaz četras dienas.
vbFirstFullWeek - darbojas gada pirmo pilno nedēļu.
vbSystem - izmanto gada pirmo nedēļu, kā noteikts jūsu ierīces atrašanās vietās.
Koda fragments:
Sub DateDiff_Function() Dim result As Long result = DateDiff("d", "1/31/2022", "2/12/2022") MsgBox result End Sub
Izvades :
Galu galā tiek atgriezta starpība starp abiem datumiem VBA.
Lasīt vairāk: Kā lietot VBA DateDiff funkciju programmā Excel (9 piemēri)
3. DatePart funkcija kā Date
Funkcija DatePart atgriež variantu (Integer), kas satur norādītā datuma definēto daļu.
Sintakse :
DatePart(intervāls, datums, [ nedēļas pirmā diena, [ gada pirmā nedēļa ]]])
Argumenti:
intervāls: Tas ir Obligāti. Virknes izteiksme ir laika intervāls, ko vēlaties pievienotVirknes izteiksme ir laika intervāls, ko izmantojat, lai aprēķinātu atšķirību starp diviem datumiem.
datums: Obligāti; Variant (Date). Datums, ko vēlaties izmantot aprēķinā.
nedēļas pirmā diena: Pēc izvēles. Konstante, kas nosaka nedēļas pirmo dienu. Ja nav noteikta, tiek pieņemta svētdiena.
gada pirmānedēļa: Pēc izvēles. Konstante, kas nosaka gada pirmo nedēļu. Ja nav iestatīta, par pirmo nedēļu tiek uzskatīta nedēļa, kurā parādās 1. janvāris.
Tagad intervāls argumentiem var būt šādi iestatījumi:
yyyy - Gads
q - Ceturtdaļa
m - Mēnesis
y - Gada diena
d - Diena
w - Nedēļas diena
ww - Nedēļa
h - Stunda
n - Minūtes
s - Otrais
Portāls nedēļas pirmā diena argumentam ir šādi iestatījumi:
vbSunday - izmanto svētdienu kā galveno nedēļas dienu.
vbPirmdiena - nodarbina pirmdienu kā nedēļas pirmo dienu.
vbTuesday - otrdiena ir nedēļas pirmā diena.
vbTrešdiena - nodarbina trešdienu kā nedēļas pirmo dienu.
vbCeturtdiena - ceturtdiena ir drīzāk nedēļas diena.
vbPiektdiena - nodarbina piektdienu kā nedēļas pirmo dienu.
vbSaturday - sestdiena ir nedēļas pirmā diena.
vbUseSystemDayOfTheWeek - izmanto nedēļas pirmo dienu, kas noteikta ierīces iestatījumos.
Portāls gada pirmānedēļa ir šādas vērtības:
vbFirstJan1 - darbojas nedēļā, ieskaitot 1. janvāri.
vbFirstFourDays - izmanto pirmo nedēļu, kas piemīt ne vairāk kā nepietiekami četras dienas jaunajā gadā.
vbFirstFullWeek - izmanto gada pirmo pilno nedēļu.
vbSystem - nodarbina gada pirmo nedēļu, kas izvēlēta jūsu ierīces atrašanās vietās.
Koda fragments :
Sub DatePart_Function() Dim result As Integer result = DatePart("m", "10/11/2022") MsgBox result End Sub
Izvades :
Tādējādi šo datuma funkciju var izmantot VBA kodos.
Lasīt vairāk: Kā lietot VBA FileDateTime funkciju programmā Excel (3 izmantošanas veidi)
4. DateSerial funkcija
Datumu, pamatojoties uz ievadīto gadu, mēnesi un dienu, varat skatīt, izmantojot opciju The DateSerial funkcija.
Sintakse:
DateSerial(gads, mēnesis, diena)
Argumenti:
gads - Obligātais lauks. Skaitlis no 100 līdz 9999 (ieskaitot) vai ciparu izteiksme, kas simbolizē gadu.
mēnesis - Obligāts lauks. Vesels skaitlis, kas nosaka mēnesi.
diena - Obligāts lauks. Vesels skaitlis, kas raksturo dienu.
Koda fragments:
Sub date_serial() Dim date_special As Date date_special = DateSerial(2022, 1, 11) MsgBox date_special End Sub
Izvades :
Lasīt vairāk: Kā lietot VBA TimeSerial programmā Excel (3 piemēri)
4. VBA DateValue funkcija
Tagad mēs izmantojam funkciju DateValue, lai definētu datumu.
Sintakse :
DateValue(datums)
Arguments:
Šajā gadījumā datums arguments parasti ir virknes izteiksme, kas apraksta datumu no 1. janvāra 100. gada līdz 31. decembrim 9999. gada 31. decembrim. Neatkarīgi no tā, datums var būt arī jebkura izteiksme, kas var simbolizēt datumu, laiku vai gan datumu, gan laiku šajā diapazonā.
Koda fragments:
Sub Date_value() Dim result As Date result = DateValue("10 janvāris, 2022") MsgBox result End Sub
Izvades :
Kā redzat, mēs veiksmīgi izmantojām datuma funkciju VBA kodos.
5. Dienas funkcija programmā VBA
Tas atgriež Variant (Integer), kas nosaka reālu skaitli no 1 līdz 31 (ieskaitot), kas izsaka mēneša dienu.
Sintakse :
Diena(datums)
Arguments:
Nepieciešamais datuma arguments ir jebkurš variants, skaitliska izteiksme, virknes izteiksme vai jebkura kombinācija. Tas ir datums. Ja datums ietver Null, arī tiks atgriezts Null.
Koda fragments:
Sub day_function() Dim date1, the_day date1 = #12/12/2023# the_day = Day(date1) MsgBox the_day End Sub
Izvades rezultāts:
Kā redzat, izmantojot VBA kodus, mēs noskaidrojām, ka dotā datuma diena ir 12.
Saistīts saturs: VBA formāta funkcija programmā Excel (8 izmantošanas veidi ar piemēriem)
6. VBA mēneša funkcija kā datums
Tas atgriež Variant (Integer), kas definē reālu skaitli no 1 līdz 12 (ieskaitot), kas izsaka gada mēnesi.
Sintakse :
Mēnesis(datums)
Arguments:
Nepieciešamais datuma arguments ir jebkurš variants, skaitliska izteiksme, virknes izteiksme vai jebkura kombinācija. Tas ir datums. Ja datums ietver Null, arī tiks atgriezts Null.
Koda fragments:
Sub month_function() Dim date1, the_month date1 = #12/12/2023# the_month = Month(date1) MsgBox the_month End Sub
Izvades rezultāts:
Saistīts saturs: Kā lietot VBA pareizo funkciju programmā Excel (6 piemēri)
Līdzīgi lasījumi
- Kā lietot VBA funkciju Environ (4 piemēri)
- Kā lietot VBA un funkciju programmā Excel (4 piemēri)
- VBA If - Then - Else paziņojums programmā Excel (4 piemēri)
- Kā lietot VBA Abs funkciju programmā Excel (9 piemēri)
- Kā lietot Concatenate programmā Excel VBA (4 metodes)
7. Mēneša nosaukuma funkcija
Tas atgriež virkni, kas parāda norādīto mēnesi.
Sintakse :
Mēneša nosaukums(mēnesis, [ saīsināt ])
Arguments:
mēnesi: Tas ir vajadzīgs. Mēneša ciparu nosaukums. Piemēram, janvāris ir 1, februāris ir 2 utt.
saīsināt: Tas ir Fakultatīvs. Boolean vērtība, kas parāda, vai mēneša nosaukums ir saīsināms. Ja tas tiek izlaists, noklusējuma vērtība ir False, kas norāda, ka mēneša nosaukums netiek saīsināts.
Koda fragments:
Sub MonthName_Function() Dim month_name As String month_name = MonthName(9, True) MsgBox month_name End Sub
Izvades rezultāts:
Kā redzat, mēs atradām mēneša nosaukumu, izmantojot šo VBA datuma funkciju.
8. Nedēļas dienas funkcija
Tas atgriež Variants ( Vesels skaitlis ), kam ir reāls skaitlis, kas izsaka nedēļas dienu.
Sintakse :
Nedēļas diena(datums, [ nedēļas pirmā diena ])
Arguments:
datums: Nepieciešamais datuma arguments ir jebkurš variants, skaitliska izteiksme, virknes izteiksme vai jebkura kombinācija. Tas attēlo datumu. Ja datums ietver Null, arī tiks atgriezts Null.
nedēļas pirmā diena: Pēc izvēles. Konstante, kas nosaka nedēļas pirmo dienu. Ja nav noteikta, tiek pieņemta svētdiena.
Portāls nedēļas pirmā diena argumentam ir šādi iestatījumi:
vbSunday - izmanto svētdienu kā galveno nedēļas dienu.
vbPirmdiena - nodarbina pirmdienu kā nedēļas pirmo dienu.
vbTuesday - otrdiena ir nedēļas pirmā diena.
vbTrešdiena - nodarbina trešdienu kā nedēļas pirmo dienu.
vbCeturtdiena - ceturtdiena ir drīzāk nedēļas diena.
vbPiektdiena - nodarbina piektdienu kā nedēļas pirmo dienu.
vbSaturday - sestdiena ir nedēļas pirmā diena.
vbUseSystemDayOfTheWeek - izmanto nedēļas pirmo dienu, kas noteikta ierīces iestatījumos.
Atgrieztie parametri
Tagad šī funkcija atgriež veselu skaitli. Tātad šo veselu skaitļu nozīme ir šāda:
1 - Svētdiena
2 - Pirmdiena
3 - Otrdiena
4 - Trešdiena
5 - Ceturtdiena
6 - Piektdiena
7 - Sestdiena
Koda fragments:
Sub Weekday_Function() Dim week_day As Integer week_day = Weekday("4/27/2022") MsgBox week_day End Sub
Izvades rezultāts:
Kā redzat, VBA datuma funkcija atgriež 4. Tas nozīmē trešdiena.
Saistīts saturs: Kā lietot Fix funkciju programmā Excel VBA (4 piemēri)
9. VBA funkcija WeekdayName
Atgriež virkni, kurā tiek attēlota ierobežotā nedēļas diena.
Sintakse :
WeekdayName(nedēļas diena, saīsinājums, nedēļas pirmā diena)
Arguments:
darba diena: Obligātais lauks. Nedēļas dienas skaitliskā identifikācija. Katras dienas skaitliskā vērtība ir atkarīga no iestatījuma firstdayofweek iestatījuma.
saīsināt: Šī ir izvēles iespēja. Boolean vērtība, kas norāda, vai nedēļas dienas nosaukums ir saīsināms. Ja tiek izlaista, noklusējuma vērtība ir False, kas nozīmē, ka nedēļas dienas nosaukums netiek saīsināts vai saīsināts.
nedēļas pirmā diena: Neobligāts lauks. Skaitliska vērtība, kas norāda nedēļas pirmo dienu. Tai var būt dažādas vērtības.
Portāls nedēļas pirmā diena argumentam var būt šādas vērtības:
vbSunday - izmanto svētdienu kā galveno nedēļas dienu.
vbPirmdiena - nodarbina pirmdienu kā nedēļas pirmo dienu.
vbTuesday - otrdiena ir nedēļas pirmā diena.
vbTrešdiena - nodarbina trešdienu kā nedēļas pirmo dienu.
vbCeturtdiena - ceturtdiena ir drīzāk nedēļas diena.
vbPiektdiena - nodarbina piektdienu kā nedēļas pirmo dienu.
vbSaturday - sestdiena ir nedēļas pirmā diena.
vbUseSystemDayOfTheWeek - izmanto nedēļas pirmo dienu, kas noteikta ierīces iestatījumos.
Koda fragments:
Sub WeekdayName_Function() Dim weekday_name As String weekday_name = WeekdayName(6) MsgBox weekday_name End Sub
Izvades rezultāts:
Kā redzat, iepriekš minētie VBA kodi parāda nedēļas dienas nosaukumu.
Saistīts saturs: Kā lietot VBA WeekdayName funkciju programmā Excel (2 piemēri)
10. Gada funkcija programmā VBA Date
Tas atgriež Variant (Integer), kurā ir reāls skaitlis, kas izsaka gadu.
Sintakse :
Gads(datums)
Arguments:
Nepieciešamais datuma arguments ir jebkurš variants, skaitliska izteiksme, virknes izteiksme vai jebkura kombinācija. Tas attēlo datumu. Ja datums ietver Null, arī tiks atgriezts Null.
Koda fragments:
Sub year_function() Dim date1, the_year date1 = #12/12/2023# the_year = Year(date1) MsgBox the_year End Sub
Izvades rezultāts:
Šeit redzams dotā datuma gads pēc VBA koda ieviešanas.
Lasīt vairāk: Kā lietot VBA aizstāšanas funkciju programmā Excel (11 lietojumprogrammas)
11. FormatDateTime funkcija
Šī funkcija atgriež izteiksmi, kas formatēta kā datums vai laiks.
Sintakse :
FormatDateTime(Date, [ NamedFormat ])
Arguments:
Datums: Obligātais lauks. Formatējamā datuma izteiksme.
NamedFormat: Tas nav obligāts. Tā ir skaitliska vērtība, kas parāda datuma/laika formātu. Ja tas nav norādīts, tiek izmantots datums/laiks. vbGeneralDate .
Portāls NamedFormat var būt šādas vērtības:
vbGeneralDate(0): Rādīt datumu un/vai laiku. Ja ir datuma daļa, parādiet to kā īsu datumu. Ja ir laika daļa, parādiet to kā garu laiku. Ja ir abas daļas, tās tiek parādītas, ja ir.
vbLongDate(1): Attēlojiet datumu, izmantojot datora reģionālajos iestatījumos izvēlēto garā datuma konfigurāciju.
vbShortDate(2): Parādiet datumu, izmantojot datora reģionālajos iestatījumos norādīto īso datuma formātu.
vbLongTime(3): Rādiet laiku, izmantojot datora reģionālajos iestatījumos norādīto laika formātu.
vbShortTime(4): Rādiet laiku, izmantojot 24 stundu formātu (hh:mm).
Koda fragments:
Sub FormatDateTime_Function() d = ("2022-02-03 18:25") MsgBox ("Format 1 : " & FormatDateTime(d)) MsgBox ("Format 2 : " & FormatDateTime(d, 1)) MsgBox ("Format 3 : " & FormatDateTime(d, 2)) MsgBox ("Format 4 : " & FormatDateTime(d, 3)) MsgBox ("Format 5 : " & FormatDateTime(d, 4)) End Sub
Izvades rezultāts:
Pēc koda palaišanas tiks parādīti šādi dialoglodziņi:
Šeit varat apskatīt visus laika un datuma formātus VBA.
Lasīt vairāk: Kā lietot VBA funkciju TimeValue (6 atbilstoši piemēri)
12. VBA CDate funkcija
Funkcija konvertē derīgu datuma un laika izteiksmi uz tipisku datumu.
Sintakse :
CDate(datums)
Arguments:
Nepieciešamais datuma arguments ir jebkurš variants, skaitliska izteiksme, virknes izteiksme vai jebkura kombinācija. Tas attēlo datumu. Ja datums ietver Null, arī tiks atgriezts Null.
Koda fragments:
Sub Cdate_Function() Dim date1 As Variant Dim date2 As Variant date1 = CDate("Mar 11 2022") date2 = CDate("29 Sep 2023") MsgBox ("Pirmais datums : " & date1 & vbCrLf & "Otrs datums : " & date2) End Sub
Izvades rezultāts:
Kā redzat, mūsu VBA kods tikai atdeva tipisku Excel datuma formātu.
Saistīts saturs: Kā lietot VBA DIR funkciju programmā Excel (7 piemēri)
VBA Date piemēri
Turpmākajās sadaļās mēs jums piedāvāsim trīs praktiskus un piemērotus datēšanas piemērus, izmantojot VBA. Šajos piemēros būs iekļautas ar datēšanu saistītas problēmas un to risinājumi. Mēs iesakām jums izlasīt un praktizēt visus šos piemērus, lai uzlabotu savas VBA zināšanas. Sāksim darbu.
1. Nokavēto dienu aprēķināšana, izmantojot datumu VBA programmā
Vārda overdue nozīme ir notikt novēloti vai pēc termiņa. Late, it īpaši, pēc termiņa vai pārāk vēlu, lai izpildītu kādu prasību.
Pieņemsim, ka jums ir jāiesniedz uzdevums, kura izpildes termiņš ir svētdiena. Bet ir otrdiena, bet jūs neesat to iesniedzis. To var saukt par divām nokavēto dienu dienām.
Aplūkojiet šādu datu kopu:
Šeit mums ir datu kopa ar dažiem skolēniem un viņu uzdevumu iesniegšanas datumu. Jūs varat redzēt pēdējo iesniegšanas datumu. Mūsu mērķis ir atrast kavēto datumu, pamatojoties uz iesniegšanas datumu. Tagad, lai to paveiktu, izpildiet šādas darbības:
📌 Soļi
- Vispirms nospiediet Alt+F11 tastatūrā, lai atvērtu VBA redaktoru.
- Pēc tam atlasiet Ievietot> Modulis .
- Pēc tam ievadiet šādu kodu:
Sub overdue_days() Dim cell As Integer Dim J As Integer Dim due_date As Date due_date = #1/11/2022# For cell = 5 To 11 If Cells(cell, 4).Value = due_date Then Cells(cell, 5).Value = "Iesniegts šodien" ElseIf Cells(cell, 4).Value> due_date Then J = due_date - Cells(cell, 4).Value J = Abs(J) Cells(cell, 5).Value = J & " Overdue Days" Else Cells(cell, 5).Value = "No Overdue" End If Next cellEnd Sub
Mēs izmantojām ABS funkcija lai noņemtu mīnus zīmi.
- Pēc tam saglabājiet failu.
- Pēc tam nospiediet Alt+F8 tastatūrā, lai atvērtu dialoglodziņu Makro.
- Tālāk atlasiet
- Pēc tam noklikšķiniet uz Palaist .
Kā redzat, mēs veiksmīgi izmantojām datumu VBA un atradām kavētās dienas.
Līdzīgi lasījumi
- Kā Excel programmā Excel izmantot VBA funkciju Space (3 piemēri)
- VBA ChDir funkcijas izmantošana programmā Excel (4 piemēroti piemēri)
- Kā lietot IsNull funkciju programmā Excel VBA (5 piemēri)
- VBA lietojumprogrammas Kamēr Wend paziņojums programmā Excel (4 piemēri)
- Kā izsaukt apakšprogrammu VBA programmā Excel (4 piemēri)
2. Dzimšanas gada atrašana no datuma, izmantojot VBA
Tagad varat atrast gadu no konkrēta datuma. To ir diezgan vienkārši atrast.
Aplūkojiet šādu datu kopu:
Šeit ir redzams dažu personu dzimšanas datums. Mūsu mērķis ir no datuma iegūt dzimšanas gadu, kā arī pēdējā ieraksta Elizabetes dzimšanas gadu.
📌 Soļi
- Vispirms nospiediet Alt+F11 tastatūrā, lai atvērtu VBA redaktoru.
- Pēc tam atlasiet Insert>Modulis .
- Pēc tam ievadiet šādu kodu:
Sub find_year() Dim last_entry As Date Dim cell As Integer For cell = 5 To 11 Cells(cell, 4).Value = Year(Cells(cell, 3).Value) If cell = 11 Then last_entry = Cells(cell, 3).Value End If Next cell MsgBox "Pēdējā ieraksta dzimšanas gads: " & amp; Year(last_entry) End Sub
- Pēc tam saglabājiet failu.
- Pēc tam nospiediet Alt+F8 tastatūrā, lai atvērtu dialoglodziņu Makro.
- Tālāk atlasiet find_year .
- Pēc tam noklikšķiniet uz Palaist .
Visbeidzot, redzat, ka mums ir izdevies iegūt dzimšanas gadu no katra datuma. Mēs arī atradām pēdējā ieraksta dzimšanas gadu, izmantojot VBA datumu programmā Excel.
3. Dienu pievienošana datumā, izmantojot VBA
Tagad varat definēt datuma mainīgo un izmantot to, lai pievienotu datumu. Lai to veiktu, mēs izmantojam DateAdd Šo funkciju var izmantot, lai konkrētam datumam pievienotu dienas, mēnešus un gadus.
Aplūkojiet šādu datu kopu:
Šeit redzat dažus vārdus un tiem pievienotos datumus. Tagad mūsu mērķis ir šiem datumiem pievienot vēl piecas dienas un izveidot jaunu datumu.
📌 Soļi
- Vispirms nospiediet Alt+F11 tastatūrā, lai atvērtu VBA redaktoru.
- Pēc tam atlasiet Insert>Modulis .
- Pēc tam ievadiet šādu kodu:
Sub add_days() Dim first_date As Date Dim second_date As Date Dim cell As Integer For cell = 5 To 11 first_date = Cells(cell, 3).Value second_date = DateAdd("d", 5, first_date) Cells(cell, 4).Value = second_date Next cell End Sub End Sub
Šeit kā argumentu DateAdd funkcijā mēs izmantojām "d". Lai pievienotu attiecīgi gadus vai mēnešus, to var mainīt uz "y" vai "m",
- Pēc tam saglabājiet failu.
- Pēc tam nospiediet Alt+F8 tastatūrā, lai atvērtu dialoglodziņu Makro.
- Tālāk atlasiet.
- Pēc tam noklikšķiniet uz Palaist .
Kā redzat, mēs esam veiksmīgi pievienojuši dienas datumam, izmantojot datumu VBA. Tagad varat modificēt kodu pēc savas izvēles.
💬 Lietas, kas jāatceras
✎ VBA Date funkcija faktiski darbojas šādi funkcija TODAY programmā Excel.
✎ VBA DATUMS ir Excel funkcija, kas nav gaistoša. Tas nozīmē, ka tā saglabā datus pat tad, ja tiek pārtraukta strāvas padeve.
✎
Pamatā VBA saglabā Date vērtības kā DATE ieviešanas laikā.
✎
Tātad, ja mēģināsiet piešķirt datuma mainīgajam virknes/teksta formā, tiks pieļauta kļūda.
✎
Datuma noklusējuma vērtība ir 0:00:00 (pusnakts) 1. janvārī 0001. gadā.
Secinājums
Nobeigumā es ceru, ka šī pamācība ir sniegusi jums daļu noderīgu zināšanu par datumu VBA kodos. Mēs iesakām jums iemācīties un piemērot visus šos norādījumus savai datu kopai. Lejupielādējiet prakses darbgrāmatu un izmēģiniet tos paši. Tāpat neaizmirstiet sniegt atsauksmes komentāru sadaļā. Jūsu vērtīgās atsauksmes uztur mūsu motivāciju radīt šādas pamācības.
Neaizmirstiet pārbaudīt mūsu vietni Exceldemy.com par dažādām ar Excel saistītām problēmām un risinājumiem.
Turpiniet apgūt jaunas metodes un augt!