VBA DatePart -toiminto - Kuinka palauttaa määritetyn osan päivämäärästä?

Sisällysluettelo

Excel VBA DatePart -toiminto

VBA: n DatePart-osaa käytetään identifioimaan argumenttina annetun päivämäärän osa annetulle päivämäärälle, päivämääräosa voi olla joko päiviä tai kuukausia tai vuotta tai jopa tunti minuutteja ja sekunteja, tämän funktion syntakse selkeyttää itseään paljon ja se on seuraava, Datepart (Interval, Date as Argument).

Syntaksi

DatePart-funktion syntakse on annettu alla:

  • Intervalli: Väliargumentissa välitettävät tiedot ovat merkkijonotyyppiä, mikä tarkoittaa, että tämä argumentti voi sisältää siinä kelvollisia arvoja. Väli voi olla vuosi, kuukausi, neljännes, päivä, viikko, tunti, minuutti, sekunti.
  • Päivämäärä: Päivämääräarvo, joka on arvioitava.
  • firstdayofweek: Tämä on valinnainen parametri. Tämä kuvaa viikon ensimmäistä päivää. Tämä voidaan jopa jättää huomiotta. Jos tätä parametria ei oteta huomioon, sunnuntai otetaan automaattisesti viikon ensimmäisenä päivänä. Tätä parametria voidaan käyttää, jos haluat muuttaa sitä. Tämä argumentti voi koostua vbUseSystem 0: sta.

Käytä NLS API -asetusta

vbSunday (oletus), vbMonday, vbTuesday, vbWednesday, vbThursday vbFriday, vbSaturday.
  • firstweekofyear: Samoin ylin parametri, tämä on myös valinnainen parametri. Tämä kuvaa vuoden ensimmäistä viikkoa. Tämä parametri voidaan myös ohittaa. Jos tätä parametria ei oteta huomioon, se olettaa, että 1. tammikuuta on vuoden ensimmäinen viikko. Tätä parametria voidaan käyttää, jos haluat muuttaa sitä.
    Tämä argumentti voi koostua seuraavista arvoista.
    vbUseSystem, vbFirstJan1, vbFirstFourDays, vbFirstFullWeek.

Annettuaan kaikki parametrit datepart () palauttaa numeerisen arvon, kuten koko päivämäärä tai vuosi, kuukausi tai vuosineljännes jne. Tämän vuoksi tämän funktion palautustyyppi on numeerinen arvo.

Kuinka käyttää DatePart-toimintoa VBA: ssa?

Esimerkki 1

Ensimmäinen esimerkki on näyttää myös kyseisen kuukauden täydellinen päivämäärä ja vuosineljännes.

Tämän saavuttamiseksi meidän on kirjoitettava koodi Visual Basiciin kyseiselle Goto Developer -välilehdelle ja napsautettava sitten Visual Basic, jolloin ikkuna avautuu.

Kirjoita kyseiseen ikkunaan koodi alla olevan kuvan mukaisesti.

Koodi:

Sub date_Datepart () Dim mydate As Variant mydate = # 12/25/2019 # MsgBox mydate MsgBox DatePart ("q", mydate) 'näyttää vuosineljänneksen lopun ali

Tässä esimerkissä olemme käyttäneet datepart-funktiota näyttämään päivämäärän ja osan päivämäärästä, joka on neljäsosa päivämäärästä. Tämä näyttää, mikä vuosineljännes on päivämäärä.

Jos korjaamme koodin virheen, päivämäärä näytetään täydellisenä päivämääränä ensimmäisen kerran, kun koodi suorittaa “Msgbox mydate”, koska satunnaispäivä on määritetty “mydate” -muuttujalle.

Seuraavaksi näytämme, minkä vuosineljänneksen kyseinen päivä tulee.

Kun suoritat koodin manuaalisesti tai pikanäppäimellä F5, päivämäärä näytetään kuvan osoittamalla tavalla napsauttamalla ok. Seuraavaksi näytetään päivämäärä neljännes. Tämä voidaan näyttää alla olevassa kuvakaappauksessa.

Vastaavasti vain vuosineljännes, vain päivämäärä tai kuukausi tai vuosi voidaan näyttää.

Esimerkki 2

Tässä esimerkissä kirjoitan päivämäärän manuaalisesti ajon aikana.

Koodi:

Sub date1_datePart () Hämärtää TodayDate As Date 'Ilmoita muuttujat. Hämärä Msg TodayDate = InputBox ("Anna päivämäärä:") Msg = "Quarter:" & DatePart ("q", TodayDate) MsgBox Msg End Sub

Tässä esimerkissä yritämme saada päivämäärän manuaalisesti ajon aikana. Koodi “TodayDate = InputBox (“ Anna päivämäärä: ”)” tämä rivi osoittaa, että päivämäärä voidaan syöttää manuaalisesti,

Kun olet syöttänyt päivämäärän manuaalisesti, se näyttää päivämäärän neljänneksen viestiruudussa. Tämä voidaan näyttää alla olevassa kuvakaappauksessa.

Kuten kesäkuun kuukausi on 2. neljänneksellä, tämä näyttää 2 toinen neljännes, kuten yllä olevassa kuvakaappaus.

Esimerkki 3

Tässä esimerkissä kaikki arvot täytetään soluihin.

Koodi:

Private Sub Workbook_Open () Dim DummyDate as Date DummyDate = ActiveSheet.Cells (2, 2) ActiveSheet.Cells (2, 2) .Arvo = Päivä (DummyDate) ActiveSheet.Cells (3, 2) .Arvo = Hour (DummyDate) ActiveSheet .Cells (4, 2) .Arvo = Minuutti (DummyDate) ActiveSheet.Cells (5, 2) .Arvo = Month (DummyDate) ActiveSheet.Cells (6, 2) .Arvo = 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.
  • Tämä toiminto erottaa myös päivämäärän, kuukauden ja vuoden tietystä päivämäärästä.
  • Tätä toimintoa käyttämällä päivämäärä ei ole vain erotettu. Voimme myös saada vuosineljänneksen, päivän, tunnin, minuutin ja sekunnin.

Muistettavaa

  • Tätä toimintoa voidaan käyttää vain VBA-toimintona. Normaalissa Excelissä tätä ei voida käyttää.
  • Päivämäärät, jotka on annettu arvona tässä toiminnossa, voidaan antaa missä tahansa muodossa, kuten kk-pp-vvvv-muoto tai PP-KK-VVVV muodossa.
  • Tämä toiminto erottaa kaikki arvot erikseen, kuten päivämäärä, kuukausi, vuosi tai aika, myös tunti, minuutti, sekunti.
  • Tämä on järjestetty Microsoft Excelin VBA: n Päivämäärä- ja aikatoiminnot -kohdassa.

Mielenkiintoisia artikkeleita...