VBA DatePart funkcija - Kaip grąžinti nurodytą datos dalį?

„Excel VBA DatePart“ funkcija

„DatePart“ VBA yra naudojamas nurodytos datos datos daliai, nurodytai kaip argumentas, datos dalis gali būti dienos arba mėnesiai, arba metai, arba net valandos minutės ir sekundės, šios funkcijos sintaksė labai paaiškina save jis yra toks, Datepart (intervalas, data kaip argumentas).

Sintaksė

Funkcijos „DatePart“ sintaksė pateikiama žemiau:

  • Intervalas: Duomenys, kuriuos reikia perduoti intervalo argumente, yra eilutės tipas, o tai reiškia, kad šiame argumente gali būti bet kokios galiojančios reikšmės. Intervalas gali būti metų, mėnesio, ketvirčio, ​​dienos, savaitės, valandos, minutės, sekundės.
  • Data: datos vertė, kurią reikia įvertinti.
  • firstdayofweek: Tai neprivalomas parametras. Tai apibūdina pirmąją savaitės dieną. To galima net nepaisyti. Jei šio parametro nepaisoma, sekmadienis automatiškai laikomas pirmąja savaitės diena. Jei norite tai pakeisti, galite naudoti šį parametrą. Šį argumentą gali sudaryti „vbUseSystem 0“.

Naudokite NLS API nustatymą

vbSunday (numatytasis), vbMonday, vbTuesday, vbWednesday, vbThursday vbFriday, vbSaturday.
  • firstweekofyear: viršutinis parametras taip pat yra neprivalomas parametras. Tai apibūdina pirmąją metų savaitę. Šio parametro taip pat galima nepaisyti. Jei šis parametras nepaisomas, manoma, kad sausio 1 d. Yra pirmoji metų savaitė. Jei norite tai pakeisti, galite naudoti šį parametrą.
    Šį argumentą gali sudaryti šios vertės.
    vbUseSystem, vbFirstJan1, vbFirstFourDays, vbFirstFullWeek.

Pateikęs visus parametrus, dataepart () grąžins skaitinę vertę, pvz., Visą datą, metus, mėnesį ar ketvirtį ir kt. Taigi šios funkcijos grąžinimo tipas bus skaitinė reikšmė.

Kaip naudoti „DatePart“ funkciją VBA?

1 pavyzdys

Pirmasis pavyzdys yra rodyti visą datą ir to mėnesio ketvirtį.

Norėdami tai pasiekti, turime parašyti tam tikrą „Visual Basic“ kodą tam „Goto Developer“ skirtukui ir tada spustelėkite „Visual Basic“, tada bus atidarytas langas.

Tame lange parašykite kodą, kaip parodyta žemiau.

Kodas:

Sub date_Datepart () „Dim mydate“ kaip variantą mydate = # 12/25/2019 # MsgBox mydate MsgBox DatePart ("q", mydate) 'rodo ketvirtį End Sub

Šiame pavyzdyje mes naudojome datepart funkciją, norėdami parodyti datą ir tam tikrą datos dalį, kuri yra datos ketvirtis. Tai rodo, kuris metų ketvirtis yra data.

Jei mes derinsime kodą, data bus rodoma kaip visa data pirmą kartą, kai kodas vykdys „Msgbox mydate“, nes atsitiktinė data priskiriama kintamajam „mydate“.

Toliau parodome, kuriam metų ketvirčiui taikoma ši data.

Kai paleidžiate kodą rankiniu būdu arba naudodamiesi sparčiuoju klavišu F5, data bus rodoma taip, kaip parodyta spustelėjus Gerai. Tada bus rodomas datos ketvirtis. Tai galima parodyti žemiau esančioje ekrano kopijoje.

Taip pat galima rodyti tik ketvirtį, datą, mėnesį ar metus.

2 pavyzdys

Šiame pavyzdyje datą įvesiu rankiniu būdu vykdymo metu.

Kodas:

Sub date1_datePart () „Dim TodayDate As Date“ paskelbti kintamuosius. „Dim Msg TodayDate = InputBox“ („Įveskite datą:“) Msg = „Quarter:" & DatePart ("q", TodayDate) MsgBox Msg End Sub

Šiame pavyzdyje mes bandome gauti datą rankiniu būdu vykdymo metu. Kodas „TodayDate = InputBox („ Įveskite datą: “)“ ši eilutė rodo, kad datą galima įvesti rankiniu būdu,

Rankiniu būdu įvedus datą, pranešimo laukelyje rodomas datos ketvirtis. Tai galima parodyti žemiau esančioje ekrano kopijoje.

Kadangi birželio mėnuo yra antrame ketvirtyje, tai rodo antrąjį ketvirtį, kaip parodyta aukščiau pateiktoje ekrano kopijoje.

3 pavyzdys

Šiame pavyzdyje visos vertės bus užpildytos langeliuose.

Kodas:

Privati ​​antrinė darbaknygė_Atidaryti () „Dim DummyDate“ kaip data .Cells (4, 2) .Value = minutė (DummyDate) ActiveSheet.Cells (5, 2) .Value = Month (DummyDate) ActiveSheet.Cells (6, 2) .Vertė = 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.
  • Ši funkcija taip pat atskiria datą, mėnesį ir metus nuo konkrečios datos.
  • Naudojant šią funkciją, data ne tik atskiriama. Taip pat galime gauti ketvirtį, dieną, valandą, minutę ir sekundę.

Ką reikia atsiminti

  • Šią funkciją galima naudoti tik kaip VBA funkciją. Normalioje „Excel“ versijoje to naudoti negalima.
  • Datos, nurodytos kaip šios funkcijos vertė, gali būti pateikiamos bet kokiu formatu, pavyzdžiui, mm-dd-yyyy formatu arba DD-MM-YYYY formatu ir pan.
  • Ši funkcija atskiria visas vertes, pvz., Datą, mėnesį, metus ar laiką, taip pat valandą, minutę, sekundes.
  • Tai organizuojama pagal „Microsoft Excel“ VBA datos ir laiko funkcijas.

Įdomios straipsniai...