VBA Date Function (12 makrojen käyttöä esimerkkeineen)

  • Jaa Tämä
Hugh West

Microsoft Visual Basic -sovelluksessa päivämäärän funktiot tai kaikki päivämäärään liittyvät käsitteet ovat välttämättömiä erilaisten operaatioiden suorittamiseksi tietokokonaisuuksissasi. Saatat joutua erilaisiin tilanteisiin, joissa sinun on käytettävä näitä funktioita. Tässä opetusohjelmassa opit VBA:n päivämäärän funktiosta sopivien esimerkkien ja asianmukaisten kuvien avulla. Lisäksi annamme sinulle useita päivämäärän funktioita.jotka voit toteuttaa työarkissasi.

Lataa harjoituskirja

VBA Date.xlsm:n käyttötavat

Johdanto VBA:n päivämääräfunktioon

Excel luokittelee päivämäärät Päiväys/aika Se on sisäänrakennettu funktio, jota voidaan käyttää VBA-makroissa päivämäärään liittyvien toimintojen suorittamiseen.

Ennen kuin aloitat Date-toiminnon käytön, sinun on tiedettävä, mitä Päivämäärämuuttujat VBA:ssa .

⏺ Syntaksi

Date()

⏺ Argumentit Perustelut

Ei ole mitään perusteluja.

⏺ Paluu

Palauttaa nykyisen päivämäärän.

⏺ Saatavana

Excel Office 365:lle, Excel 2019, Excel 2016, Excel 2013, Excel 2011 Macille, Excel 2010, Excel 2007, Excel 2003, Excel XP, Excel 2000, Excel XP, Excel 2003, Excel 2019, Excel 2016, Excel 2013, Excel 2011, Excel 2011 for Mac, Excel 2010, Excel 2007, Excel 2003, Excel 2000

⏺ Esimerkki

Kuten tiedät, ei ole argumentteja, voit vain syöttää sen seuraavasti:

 Sub vba_date() Dim current_date As Date current_date = Date MsgBox current_date End Sub 

Kun työskentelemme Date-funktion kanssa, emme anna sulkuja VBA-koodeissa, kuten tässä esimerkissä.

Lähtö :

12 VBA:n päivämäärätoimintoa, jotka sinun pitäisi oppia

Nyt, tulevissa osioissa, näytämme sinulle joitakin muita päivämäärän funktioita, joita voit käyttää lukuisiin tarkoituksiin VBA:ssa. Lue nämä osiot, jotta tiedät kaikki mahdolliset tavat työskennellä päivämäärän kanssa VBA:ssa. Suosittelemme, että pidät ne arsenaalissasi. Se varmasti parantaa tietämystäsi.

1. DateAdd-toiminto päivämääränä VBA:ssa

VBA:ssa käytämme DateAdd-funktiota päivien lisäämiseen tiettyyn päivämäärään. Sen jälkeen se palauttaa tuloksena olevan päivämäärän.

Syntaksi:

DateAdd(interval, number, date)

Argumentit:

intervalli: Se on Required. String-ilmaisu on aikaväli, jonka haluat lisätä.

numero: Tarvitaan. Se on numeerinen lauseke, joka on lisättävien aikavälien lukumäärä. Se voi olla positiivinen (saadaksesi päivämääriä tulevaisuudessa) tai negatiivinen (saadaksesi päivämääriä menneisyydessä).

päivämäärä: Alkuperäinen päivämäärä/aika.

Nyt intervalli argumenteilla voi olla seuraavat asetukset:

yyyy - Vuosi

q - Neljännes

m - Kuukausi

y - Vuoden päivä

d - Päivä

w - Arkipäivä

ww - Viikko

h - Tunti

n - Minuutti

s - Toinen

Koodinpätkä :

 Sub dateadd_function() Dim result_Date As Date result_Date = DateAdd("d", 15, "1/31/2022") MsgBox result_Date End Sub 

Lähtö:

Kuten näet, se lisäsi 15 päivämäärää nykyiseen päivämäärään VBA:ssa.

Lue lisää: IsDate-funktion käyttäminen VBA:ssa (3 esimerkkiä)

2. DateDiff-funktio VBA:ssa

DateDiff-funktio palauttaa muuttujan (Long), joka määrittää kahden määritetyn päivämäärän välisten aikavälien määrän.

Syntaksi :

DateDiff(interval, date1, date2, [ firstdayofweek, [ firstweekofyear ]] )

Argumentit:

intervalli: Se on pakollinen. String-lauseke on aikaväli, jonka haluat lisätäString-lauseke on aikaväli, jonka avulla lasket kahden päivämäärän välisen eron.

date1,date2 : Required; Variant (Date). Kaksi päivämäärää, joita haluat käyttää laskennassa.

viikon ensimmäinen päivä: Valinnainen. Vakio, joka määrittää viikon ensimmäisen päivän. Jos sitä ei ole määritetty, oletetaan sunnuntai.

vuoden ensimmäisellä viikolla: Vapaaehtoinen. Vakio, joka määrittää vuoden ensimmäisen viikon. Jos sitä ei ole asetettu, ensimmäisen viikon oletetaan olevan se viikko, jolla tammikuun 1. päivä ilmestyy.

Nyt intervalli argumenteilla voi olla seuraavat asetukset:

yyyy - Vuosi

q - Neljännes

m - Kuukausi

y - Vuoden päivä

d - Päivä

w - Arkipäivä

ww - Viikko

h - Tunti

n - Minuutti

s - Toinen

The firstdayofweek argumentilla on nämä asetukset:

vbSunday - käyttää sunnuntaita viikon tärkeimpänä päivänä.

vbMonday - käyttää maanantaita viikon ensimmäisenä päivänä.

vbTuesday - toimii tiistaina viikon ensimmäisenä päivänä.

vbWednesday - käyttää keskiviikkoa viikon ensimmäisenä päivänä.

vbThursday - toimii torstaina pikemminkin viikonpäivänä.

vbFriday - käyttää perjantaita viikon ensimmäisenä päivänä.

vbSaturday - toimii lauantaina viikon ensimmäisenä päivänä.

vbUseSystemDayOfTheWeek - käyttää laitteen asetuksissa määriteltyä viikon ensimmäistä päivää.

The vuoden ensimmäinen viikko on nämä asetukset:

vbFirstJan1 - hyödyntää viikkoa, joka sisältää 1. tammikuuta.

vbFirstFourDays - työllistää ensimmäisen viikon, jolla on vähintään neljä päivää uudessa vuodessa.

vbFirstFullWeek - toimii vuoden ensimmäisellä täydellä viikolla.

vbSystem - käyttää vuoden ensimmäistä viikkoa laitteen sijainnin mukaan.

Koodinpätkä:

 Sub DateDiff_Function() Dim result As Long result = DateDiff("d", "1/31/2022", "2/12/2022") MsgBox result End Sub 

Lähtö :

Lopulta se palauttaa kahden päivämäärän välisen erotuksen VBA:ssa.

Lue lisää: VBA DateDiff -funktion käyttäminen Excelissä (9 esimerkkiä)

3. DatePart Function as Date

DatePart-funktio palauttaa muuttujan (kokonaisluku), joka sisältää annetun päivämäärän määritellyn osan.

Syntaksi :

DatePart(interval, date, [ firstdayofweek, [ firstweekofyear ]])

Argumentit:

intervalli: Se on pakollinen. String-lauseke on aikaväli, jonka haluat lisätäString-lauseke on aikaväli, jonka avulla lasket kahden päivämäärän välisen eron.

päivämäärä: Pakollinen; Variant (Date). Päivämäärä, jota haluat käyttää laskennassa.

viikon ensimmäinen päivä: Valinnainen. Vakio, joka määrittää viikon ensimmäisen päivän. Jos sitä ei ole määritetty, oletetaan sunnuntai.

vuoden ensimmäisellä viikolla: Vapaaehtoinen. Vakio, joka määrittää vuoden ensimmäisen viikon. Jos sitä ei ole asetettu, ensimmäisen viikon oletetaan olevan se viikko, jolla tammikuun 1. päivä ilmestyy.

Nyt intervalli argumenteilla voi olla seuraavat asetukset:

yyyy - Vuosi

q - Neljännes

m - Kuukausi

y - Vuoden päivä

d - Päivä

w - Arkipäivä

ww - Viikko

h - Tunti

n - Minuutti

s - Toinen

The firstdayofweek argumentilla on nämä asetukset:

vbSunday - käyttää sunnuntaita viikon tärkeimpänä päivänä.

vbMonday - käyttää maanantaita viikon ensimmäisenä päivänä.

vbTuesday - toimii tiistaina viikon ensimmäisenä päivänä.

vbWednesday - käyttää keskiviikkoa viikon ensimmäisenä päivänä.

vbThursday - toimii torstaina pikemminkin viikonpäivänä.

vbFriday - käyttää perjantaita viikon ensimmäisenä päivänä.

vbSaturday - toimii lauantaina viikon ensimmäisenä päivänä.

vbUseSystemDayOfTheWeek - käyttää laitteen asetuksissa määriteltyä viikon ensimmäistä päivää.

The vuoden ensimmäinen viikko on nämä arvot:

vbFirstJan1 - toimii viikolla, johon sisältyy 1. tammikuuta.

vbFirstFourDays - käyttää ensimmäisellä viikolla, että hallussaan on korkeintaan alimitoitettu neljä päivää uuden vuoden aikana.

vbFirstFullWeek - hyödyntää vuoden ensimmäistä täyttä viikkoa.

vbSystem - työllistää vuoden ensimmäisen viikon, joka on valittu laitteen sijainnin mukaan.

Koodinpätkä :

 Sub DatePart_Function() Dim result As Integer result = DatePart("m", "10/11/2022") MsgBox result End Sub 

Lähtö :

Näin voit käyttää tätä päivämäärätoimintoa VBA-koodeissa.

Lue lisää: Kuinka käyttää VBA FileDateTime -funktiota Excelissä (3 käyttöä)

4. DateSerial-funktio

Voit nähdä syötettyyn vuoteen, kuukauteen ja päivään perustuvan päivämäärän käyttämällä The DateSerial toiminto.

Syntaksi:

DateSerial(vuosi, kuukausi, päivä)

Argumentit:

vuosi - Pakollinen kenttä: Luku väliltä 100-9999, mukaan lukien, tai numeerinen lauseke, joka symboloi vuotta.

kuukausi - Pakollinen kenttä. Kokonaislukuarvo, joka määrittää kuukauden.

päivä - Pakollinen kenttä. Kokonaislukuarvo, joka kuvaa päivää.

Koodinpätkä:

 Sub date_serial() Dim date_special As Date date_special = DateSerial(2022, 1, 11) MsgBox date_special End Sub 

Lähtö :

Lue lisää: VBA TimeSerialin käyttö Excelissä (3 esimerkkiä)

4. VBA DateValue -funktio

Nyt käytämme DateValue-funktiota päivämäärän määrittämiseen.

Syntaksi :

DateValue(päivämäärä)

Väite:

Täällä päivämäärä argumentti on yleensä merkkijono, joka kuvaa päivämäärää ajalta 1.1.100-31.12.9999. Päiväys voi kuitenkin olla mikä tahansa lauseke, joka voi symboloida päivämäärää, kellonaikaa tai sekä päivämäärää että kellonaikaa kyseisellä alueella.

Koodinpätkä:

 Sub Date_value() Dim result As Date result = DateValue("tammikuu, 10, 2022") MsgBox result End Sub 

Lähtö :

Kuten näet, olemme onnistuneesti käyttäneet päivämääräfunktiota VBA-koodeissa.

5. Päivä-funktio VBA:ssa

Se palauttaa muuttujan (kokonaisluku), joka määrittää reaaliluvun väliltä 1-31, joka välittää kuukauden päivän.

Syntaksi :

Päivä(päivämäärä)

Väite:

Vaadittu päivämääräargumentti on mikä tahansa Variant, numeerinen lauseke, merkkijono tai mikä tahansa niiden yhdistelmä. Se edustaa päivämäärää. Jos päivämäärä sisältää Null, se palauttaa myös Null.

Koodinpätkä:

 Sub day_function() Dim date1, the_day date1 = #12/12/2023# the_day = Päivä(date1) MsgBox the_day End Sub 

Lähtö:

Kuten näet, VBA-koodien avulla saimme selville, että annetun päivämäärän päivä on 12.

Aiheeseen liittyvä sisältö: VBA-muotoilutoiminto Excelissä (8 käyttöä esimerkkeineen)

6. VBA Kuukausi-funktio päivämääränä

Se palauttaa muuttujan (kokonaisluku), joka määrittää reaaliluvun väliltä 1-12, mukaan lukien, ja joka ilmaisee vuoden kuukauden.

Syntaksi :

Kuukausi(päivämäärä)

Väite:

Vaadittu päivämääräargumentti on mikä tahansa Variant, numeerinen lauseke, merkkijono tai mikä tahansa niiden yhdistelmä. Se edustaa päivämäärää. Jos päivämäärä sisältää Null, se palauttaa myös Null.

Koodinpätkä:

 Sub month_function() Dim date1, the_month date1 = #12/12/2023# the_month = Month(date1) MsgBox the_month End Sub 

Lähtö:

Aiheeseen liittyvä sisältö: VBA-oikean funktion käyttäminen Excelissä (6 esimerkkiä)

Samanlaisia lukemia

  • VBA:n Environ-funktion käyttäminen (4 esimerkkiä)
  • VBA: n ja toiminnon käyttäminen Excelissä (4 esimerkkiä)
  • VBA If - Then - Else Statement Excelissä (4 esimerkkiä)
  • VBA Abs -funktion käyttäminen Excelissä (9 esimerkkiä)
  • Kuinka käyttää ketjuttamista Excel VBA: ssa (4 menetelmää)?

7. MonthName-toiminto

Se palauttaa merkkijonon, joka osoittaa määritetyn kuukauden.

Syntaksi :

MonthName(kuukausi, [ lyhenne ])

Väite:

kuukausi: Se on pakollinen. Kuukauden numeerinen nimi. Esimerkiksi tammikuu on 1, helmikuu on 2 ja niin edelleen.

lyhentää: Se on valinnainen. Boolen arvo, joka osoittaa, lyhennetäänkö kuukauden nimeä. Jos se jätetään pois, oletusarvo on False, mikä tarkoittaa, että kuukauden nimeä ei lyhennetä.

Koodinpätkä:

 Sub MonthName_Function() Dim month_name As String month_name = MonthName(9, True) MsgBox month_name End Sub 

Lähtö:

Kuten näet, löysimme kuukauden nimen tällä VBA Date -funktiolla.

8. Arkipäivän toiminto

Se palauttaa Vaihtoehto ( Kokonaisluku ), jolla on viikonpäivän ilmaiseva reaaliluku.

Syntaksi :

Viikonpäivä(date, [ firstdayofweek ])

Väite:

päivämäärä: Vaadittu päivämääräargumentti on mikä tahansa Variant, numeerinen lauseke, merkkijono tai mikä tahansa niiden yhdistelmä. Se edustaa päivämäärää. Jos päivämäärä sisältää Null, se palauttaa myös Null.

viikon ensimmäinen päivä: Valinnainen. Vakio, joka määrittää viikon ensimmäisen päivän. Jos sitä ei ole määritetty, oletetaan sunnuntai.

The firstdayofweek argumentilla on nämä asetukset:

vbSunday - käyttää sunnuntaita viikon tärkeimpänä päivänä.

vbMonday - käyttää maanantaita viikon ensimmäisenä päivänä.

vbTuesday - toimii tiistaina viikon ensimmäisenä päivänä.

vbWednesday - käyttää keskiviikkoa viikon ensimmäisenä päivänä.

vbThursday - toimii torstaina pikemminkin viikonpäivänä.

vbFriday - käyttää perjantaita viikon ensimmäisenä päivänä.

vbSaturday - toimii lauantaina viikon ensimmäisenä päivänä.

vbUseSystemDayOfTheWeek - käyttää laitteen asetuksissa määriteltyä viikon ensimmäistä päivää.

Palautusparametrit

Tämä funktio palauttaa kokonaisluvun, joten näiden kokonaislukujen merkitys on seuraava:

1 - Sunnuntai

2 - Maanantai

3 - Tiistai

4 - Keskiviikko

5 - Torstai

6 - Perjantai

7 - Lauantai

Koodinpätkä:

 Sub Weekday_Function() Dim week_day As Integer week_day = Weekday("4/27/2022") MsgBox week_day End Sub 

Lähtö:

Kuten näet, VBA:n päivämääräfunktio palauttaa arvon 4. Se tarkoittaa keskiviikkoa.

Aiheeseen liittyvä sisältö: Kuinka käyttää Fix-funktiota Excel VBA: ssa (4 esimerkkiä)

9. VBA WeekdayName-funktio

Palauttaa merkkijonon, joka näyttää viikon rajoitetun päivän.

Syntaksi :

WeekdayName(viikonpäivä, lyhenne, viikon ensimmäinen päivä)

Väite:

arkipäivä: Pakollinen kenttä. Viikonpäivän numeerinen tunniste. Kunkin päivän numeerinen arvo riippuu firstdayofweek-asetuksen asetuksesta.

lyhentää: Tämä on valinnainen. Boolen arvo, joka ilmaisee, lyhennetäänkö viikonpäivän nimeä. Jos se jätetään pois, oletusarvo on False, mikä tarkoittaa, että viikonpäivän nimeä ei lyhennetä tai lyhennetä.

viikon ensimmäinen päivä: Valinnainen kenttä. Numeerinen arvo, joka ilmaisee viikon ensimmäisen päivän. Sillä voi olla useita eri arvoja.

The firstdayofweek argumentilla voi olla seuraavat arvot:

vbSunday - käyttää sunnuntaita viikon tärkeimpänä päivänä.

vbMonday - käyttää maanantaita viikon ensimmäisenä päivänä.

vbTuesday - toimii tiistaina viikon ensimmäisenä päivänä.

vbWednesday - käyttää keskiviikkoa viikon ensimmäisenä päivänä.

vbThursday - toimii torstaina pikemminkin viikonpäivänä.

vbFriday - käyttää perjantaita viikon ensimmäisenä päivänä.

vbSaturday - toimii lauantaina viikon ensimmäisenä päivänä.

vbUseSystemDayOfTheWeek - käyttää laitteen asetuksissa määriteltyä viikon ensimmäistä päivää.

Koodinpätkä:

 Sub WeekdayName_Function() Dim weekday_name As String weekday_name = WeekdayName(6) MsgBox weekday_name End Sub 

Lähtö:

Kuten näet, yllä olevat VBA-koodit näyttävät viikonpäivän nimen.

Liittyvä sisältö: VBA WeekdayName -funktion käyttäminen Excelissä (2 esimerkkiä)

10. Vuosi-funktio VBA:ssa Date

Se palauttaa muuttujan (kokonaisluku), jossa on reaaliluku, joka ilmaisee vuoden.

Syntaksi :

Vuosi(päivämäärä)

Väite:

Vaadittu päivämääräargumentti on mikä tahansa Variant, numeerinen lauseke, merkkijono tai mikä tahansa niiden yhdistelmä. Se edustaa päivämäärää. Jos päivämäärään sisältyy Null, se palauttaa myös Null.

Koodinpätkä:

 Sub year_function() Dim date1, the_year date1 = #12/12/2023# the_year = Year(date1) MsgBox the_year End Sub 

Lähtö:

Tässä näet annetun päivämäärän vuoden VBA-koodin täytäntöönpanon jälkeen.

Lue lisää: VBA-korvaustoiminnon käyttäminen Excelissä (11 sovellusta)

11. FormatDateTime-funktio

Tämä toiminto palauttaa päivämääräksi tai kellonajaksi muotoillun lausekkeen.

Syntaksi :

FormatDateTime(Date, [ NamedFormat ])

Väite:

Päivämäärä: Pakollinen kenttä. Muotoiltava päivämäärälauseke.

NamedFormat: Tämä on valinnainen. Se on numeerinen arvo, joka näyttää päivämäärän ja kellonajan muodon. Jos se jätetään pois, se käyttää arvoa vbGeneralDate .

The NamedFormat voi olla seuraavat arvot:

vbGeneralDate(0): Näyttää päivämäärän ja/tai kellonajan. Jos on päivämäärän osa, ilmaise se lyhyenä päivämääränä. Jos on kellonajan osa, näytä se pitkänä kellonaikana. Molemmat osat näytetään, jos ne ovat läsnä.

vbLongDate(1): Näytä päivämäärä käyttämällä tietokoneen alueellisissa asetuksissa valittua pitkää päivämäärämäärää.

vbShortDate(2): Näytä päivämäärä käyttämällä tietokoneen alueellisissa asetuksissa määritettyä lyhyttä päivämäärämuotoa.

vbLongTime(3): Näytä aika käyttämällä tietokoneen alueellisissa asetuksissa määritettyä aikamuotoa.

vbShortTime(4): Näyttää kellonajan 24 tunnin muodossa (hh:mm).

Koodinpätkä:

 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 

Lähtö:

Koodin suorittamisen jälkeen näet seuraavat valintaikkunat:

Täältä näet kaikki VBA:n aika- ja päivämäärämuodot.

Lue lisää: VBA TimeValue -funktion käyttäminen (6 merkityksellistä esimerkkiä)

12. VBA CDate -funktio

Funktio muuntaa kelvollisen päivämäärä- ja aika-ilmaisun tyypilliseksi päivämääräksi.

Syntaksi :

CDate(päivämäärä)

Väite:

Vaadittu päivämääräargumentti on mikä tahansa Variant, numeerinen lauseke, merkkijono tai mikä tahansa niiden yhdistelmä. Se edustaa päivämäärää. Jos päivämäärä sisältää Null, se palauttaa myös Null.

Koodinpätkä:

 Sub Cdate_Function() Dim date1 As Variant Dim date2 As Variant date1 = CDate("Mar 11 Mar 2022") date2 = CDate("29 Sep 2023") MsgBox ("Ensimmäinen päivämäärä : " & date1 & vbCrLf & "Toinen päivämäärä : " & date2) End Sub 

Lähtö:

Kuten näet, VBA-koodimme palautti juuri Excelin tyypillisen päivämäärämuodon.

Aiheeseen liittyvä sisältö: VBA DIR -funktion käyttäminen Excelissä (7 esimerkkiä)

Esimerkkejä VBA-päivämäärästä

Seuraavissa osioissa annamme sinulle kolme käytännönläheistä ja sopivaa esimerkkiä päivämäärän käytöstä VBA:n avulla. Nämä esimerkit sisältävät päivämäärään liittyviä ongelmia ja niiden ratkaisuja. Suosittelemme, että luet ja harjoittelet kaikki nämä esimerkit parantaaksesi VBA-tietämystäsi. Mennäänpä asiaan.

1. Lasketaan myöhässä olevat päivät käyttämällä päivämäärää VBA:ssa.

Overdue tarkoittaa myöhässä tapahtuvaa, myöhässä olevaa, myöhässä olevaa, myöhässä olevaa, myöhässä olevaa, myöhässä olevaa, myöhässä olevaa, myöhässä olevaa, myöhässä olevaa, myöhässä olevaa, myöhässä olevaa.

Oletetaan, että sinun on annettava sunnuntaina erääntyvä tehtävä, mutta nyt on tiistai, etkä ole antanut sitä. Voit kutsua sitä kahdeksi myöhästymispäiväksi.

Katsokaa seuraavaa tietokokonaisuutta:

Tässä meillä on tietokokonaisuus, joka sisältää joitakin opiskelijoita ja heidän tehtäviensä jättöpäivämäärän. Näet viimeisimmän jättöpäivän. Tavoitteenamme on löytää myöhässä oleva päiväys jättöpäivän perusteella. Tämän saavuttamiseksi noudata seuraavia ohjeita:

📌 Askeleet

  • Paina ensin Alt+F11 näppäimistölläsi avataksesi VBA-editorin.
  • Valitse sitten Lisää> Moduuli .

  • Kirjoita sen jälkeen seuraava koodi:
 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 = "Submitted Today" ElseIf Cells(cell, 4).Value> due_date Then J = due_date - Cells(cell, 4).Value J = Abs(J) Cells(cell, 5).Value = J & " Ylijäämäpäiviä" Else Cells(cell, 5).Value = "Ei ylijäämää" End If Next cellEnd Sub 

Käytimme ABS-toiminto poistamaan miinusmerkin.

  • Tallenna sitten tiedosto.
  • Paina sen jälkeen Alt+F8 näppäimistöllä avataksesi Makro-valintaikkunan.
  • Valitse seuraavaksi
  • Napsauta sitten Suorita .

Kuten näet, olemme onnistuneesti käyttäneet päivämäärää VBA:ssa ja löytäneet myöhässä olevat päivät.

Samanlaisia lukemia

  • VBA Space -funktion käyttäminen Excelissä (3 esimerkkiä)
  • Käytä VBA ChDir -funktiota Excelissä (4 sopivaa esimerkkiä)
  • Kuinka käyttää IsNull-funktiota Excel VBA: ssa (5 esimerkkiä)
  • Käytä VBA While Wend -lauseketta Excelissä (4 esimerkkiä)
  • Kuinka kutsua VBA:n aliohjelma Excelissä (4 esimerkkiä)

2. Etsi syntymävuosi päivämäärän perusteella VBA:n avulla

Nyt voit etsiä vuoden tietystä päivämäärästä alkaen. Tämä on melko helppo löytää.

Katsokaa seuraavaa tietokokonaisuutta:

Tässä näet joidenkin henkilöiden syntymäajan. Tavoitteenamme on poimia syntymävuosi päivämäärästä ja myös viimeisen merkinnän Elizabeth syntymävuosi.

📌 Askeleet

  • Paina ensin Alt+F11 näppäimistölläsi avataksesi VBA-editorin.
  • Valitse sitten Insert>Moduuli .

  • Kirjoita sen jälkeen seuraava koodi:
 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 "Viimeisen merkinnän syntymävuosi: " & Year(last_entry) End Sub 
  • Tallenna sitten tiedosto.
  • Paina sen jälkeen Alt+F8 näppäimistöllä avataksesi Makro-valintaikkunan.
  • Valitse seuraavaksi find_year .
  • Napsauta sitten Suorita .

Lopuksi näet, että olemme onnistuneet poimimaan syntymävuoden jokaisesta päivämäärästä. Löysimme myös viimeisen merkinnän syntymävuoden käyttämällä VBA:n päivämäärää Excelissä.

3. Päivien lisääminen päivämäärään VBA:n avulla

Nyt voit määritellä päivämäärämuuttujan ja käyttää sitä päivämäärän lisäämiseen. Tätä varten käytämme komentoa DateAdd Voit käyttää tätä toimintoa päivien, kuukausien ja vuosien lisäämiseen tiettyyn päivämäärään.

Katsokaa seuraavaa tietokokonaisuutta:

Tässä näet joitakin nimiä ja niihin liitettyjä päivämääriä. Tavoitteemme on nyt lisätä näihin päivämääriin viisi päivää lisää ja luoda uusi päivämäärä.

📌 Askeleet

  • Paina ensin Alt+F11 näppäimistölläsi avataksesi VBA-editorin.
  • Valitse sitten Insert>Moduuli .

  • Kirjoita sen jälkeen seuraava koodi:
 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 

Tässä käytimme DateAdd-funktiossa argumenttina "d". Voit vaihtaa sen "y" tai "m":ksi lisätäksesi vastaavasti vuosia tai kuukausia,

  • Tallenna sitten tiedosto.
  • Paina sen jälkeen Alt+F8 näppäimistöllä avataksesi Makro-valintaikkunan.
  • Valitse seuraavaksi.
  • Napsauta sitten Suorita .

Kuten näet, olemme onnistuneesti lisänneet päiviä päivämäärään käyttämällä päivämäärää VBA:ssa. Nyt voit muokata koodia valintasi mukaan.

💬 Muistettavaa

VBA Date -funktio toimii itse asiassa seuraavasti TODAY-toiminto Excelissä.

VBA DATE on excelin haihtumaton toiminto, mikä tarkoittaa, että se säilyttää tiedot, vaikka virransyöttö katkeaisi.

Periaatteessa VBA tallentaa Date-arvot DATE-muodossa käyttöönottohetkellä.

Jos siis yrität määrittää päivämäärämuuttujan merkkijonona tai tekstinä, se aiheuttaa virheen.

Päivämäärän oletusarvo on 0:00:00 (keskiyö) 1. tammikuuta 0001.

Päätelmä

Lopuksi toivon, että tämä opetusohjelma on antanut sinulle palan hyödyllistä tietoa päivämäärästä VBA-koodeissa. Suosittelemme, että opit ja sovellat kaikkia näitä ohjeita omassa datasetissäsi. Lataa harjoitustyökirja ja kokeile näitä itse. Anna myös rohkeasti palautetta kommenttiosassa. Arvokas palautteesi pitää meidät motivoituneina luomaan tällaisia opetusohjelmia.

Älä unohda tarkistaa verkkosivujamme Exceldemy.com erilaisiin Exceliin liittyviin ongelmiin ja ratkaisuihin.

Jatka uusien menetelmien oppimista ja jatka kasvamista!

Hugh West on erittäin kokenut Excel-kouluttaja ja analyytikko, jolla on yli 10 vuoden kokemus alalta. Hän on koulutukseltaan laskentatoimen ja rahoituksen kandidaatti sekä kauppatieteiden maisteri. Hughilla on intohimo opettamiseen, ja hän on kehittänyt ainutlaatuisen opetusmenetelmän, jota on helppo seurata ja ymmärtää. Hänen asiantuntemuksensa Excelistä on auttanut tuhansia opiskelijoita ja ammattilaisia ​​maailmanlaajuisesti parantamaan taitojaan ja menestymään urallaan. Blogissaan Hugh jakaa tietämyksensä maailman kanssa tarjoamalla ilmaisia ​​Excel-opetusohjelmia ja verkkokoulutusta auttaakseen yksilöitä ja yrityksiä saavuttamaan täyden potentiaalinsa.