Sisällysluettelo
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!