Funktsioon VBA DatePart - Kuidas tagastada kuupäeva määratud osa?

Lang L: none (table-of-contents)

Exceli VBA DatePart funktsioon

VBA-s DatePart kasutatakse argumendina antud kuupäeva osa tuvastamiseks antud kuupäeva osas. Kuupäeva osa võib olla kas päevad või kuud või aasta või isegi tundide minutid ja sekundid, selle funktsiooni süntaks selgitab ennast väga palju ja see on järgmine, Datepart (intervall, kuupäev kui argument).

Süntaks

Funktsiooni DatePart süntaks on toodud allpool:

  • Intervall: Intervallargumendis edastatavad andmed on stringitüübid, mis tähendab, et see argument võib selles sisaldada mis tahes kehtivaid väärtusi. Intervall võib olla aasta, kuu, kvartal, päev, nädal, tund, minut, sekund.
  • Kuupäev: kuupäeva väärtus, mida tuleb hinnata.
  • firstdayofweek: See on valikuline parameeter. See kirjeldab nädala esimest päeva. Seda võib isegi ignoreerida. Kui seda parameetrit ignoreeritakse, võtab see nädala esimese päevana automaatselt pühapäeva. Kui soovite seda muuta, saab seda parameetrit kasutada. See argument võib koosneda vbUseSystem 0-st.

Kasutage NLS API seadistust

vbSunday (vaikimisi), vbMonday, vbTuesday, vbWednesday, vbThursday vbFriday, vbSaturday.
  • firstweekofyear: Samamoodi on ülemine parameeter ka see valikuline parameeter. See kirjeldab aasta esimest nädalat. Seda parameetrit võib ka eirata. Kui seda parameetrit ignoreeritakse, eeldatakse, et aasta esimene nädal on 1. jaanuar. Kui soovite seda muuta, saab seda parameetrit kasutada.
    See argument võib koosneda järgmistest väärtustest.
    vbUseSystem, vbFirstJan1, vbFirstFourDays, vbFirstFullWeek.

Pärast kõigi parameetrite esitamist tagastab datepart () arvulise väärtuse, näiteks terve kuupäev või aasta, kuu või kvartal jne. Seega on selle funktsiooni tagastustüüp arvuline väärtus.

Kuidas kasutada funktsiooni DatePart VBA-s?

Näide 1

Esimene näide on kuvada ka selle kuu täielik kuupäev ja kvartal.

Selle saavutamiseks peame selle Goto Developer vahekaardi jaoks Visual Basicusse mõne koodi kirjutama ja seejärel klõpsama Visual Basicu ning siis avaneb aken.

Sellesse aknasse kirjutage kood, nagu allpool näidatud.

Kood:

Sub date_Datepart () Dim mydate Variantina mydate = # 12/25/2019 # MsgBox mydate MsgBox DatePart ("q", mydate) 'kuvab veerandi End Sub

Selles näites oleme kuupäevaosa funktsiooni abil kuvanud kuupäeva ja osa sellest kuupäevast, mis on veerand kuupäevast. See näitab, milline aasta kvartal on kuupäev.

Kui me silume koodi, kuvatakse kuupäev esimest korda täieliku kuupäevana, kui kood käivitab „Msgbox mydate”, kuna juhuslik kuupäev on määratud muutujale „mydate”.

Järgmisena kuvame, millisele kvartalile see kuupäev kuulub.

Kui käivitate koodi käsitsi või kiirklahvi F5 abil, kuvatakse kuupäev, nagu on näidatud, pärast klõpsamist nupul OK. Järgmisena kuvatakse kuupäeva veerand. Seda saab näidata alloleval ekraanipildil.

Samuti saab kuvada ka kvartali, ainult kuupäeva või kuu või aasta.

Näide 2

Selles näites sisestan kuupäeva käsitsi käitamise ajal.

Kood:

Sub date1_datePart () Hämarda TodayDate As Date 'Deklareeri muutujad. Dim Msg TodayDate = InputBox ("Sisestage kuupäev:") Msg = "Quarter:" & DatePart ("q", TodayDate) MsgBox Msg End Sub

Selles näites proovime kuupäeva käivitamise ajal käsitsi hankida. Kood “TodayDate = InputBox (“ Sisestage kuupäev: ”)” see rida näitab, et kuupäeva saab sisestada käsitsi,

Pärast kuupäeva käsitsi sisestamist kuvatakse sõnumikastis kuupäeva kvartal. Seda saab näidata alloleval ekraanipildil.

Kuna juuni kuu on teises kvartalis, kuvatakse sellel teine kvartal, nagu on näidatud ülaltoodud ekraanipildil.

Näide # 3

Selles näites täidetakse lahtrites kõik väärtused.

Kood:

Private Sub Workbook_Open () Dim DummyDate as Date DummyDate = ActiveSheet.Cells (2, 2) ActiveSheet.Cells (2, 2) .Väärtus = päev (DummyDate) ActiveSheet.Cells (3, 2) .Väärtus = tund (DummyDate) ActiveSheet .Cells (4, 2) .Value = minut (DummyDate) ActiveSheet.Cells (5, 2) .Value = Month (DummyDate) ActiveSheet.Cells (6, 2) .Value = Weekday (DummyDate) End Sub

The dates are filled in the cells in the excel sheet, for that the code is written as Active Sheet.cells. By this code, the date which is present maybe a year, month, or date can be inserted into the given cells.

For example, in the above screenshot,

The day is to be inserted in the cells ( 2, 2) of the excel sheet. Hence the code is written as “ ActiveSheet.Cells(2, 2).Value = Day(DummyDate) “ .

Run the code using the F5 key or manually, and the result would be as shown below.

It is, by default taking date today, and it is displaying as 30 in (2,6) cell.

Likewise, for all the other data also it can be filled.

Usage of DatePart Function

  • DatePart function can be used to display the part of the date as the name indicates, i.e., if only day or month or year of the date needs to be displayed, then this function can be used.
  • See funktsioon eraldab ka kuupäeva, kuu ja aasta konkreetsest kuupäevast.
  • Selle funktsiooni abil ei eraldata kuupäeva mitte ainult. Saame ka veerandi, päeva, tunni, minuti ja sekundi.

Asjad, mida meeles pidada

  • Seda funktsiooni saab kasutada ainult VBA funktsioonina. Tavalises excelis seda kasutada ei saa.
  • Selles funktsioonis väärtusena antud kuupäevi saab esitada mis tahes vormingus, näiteks vormingus kk-pp-aaaa või PK-KK-AAAA jne.
  • See funktsioon eraldab kõik väärtused eraldi, näiteks kuupäev, kuu, aasta või kellaaeg, samuti tund, minut, sekundid.
  • See on korraldatud jaotises Kuupäeva ja kellaaja funktsioonid Exceli VBA-s.

Huvitavad Artiklid...