Palauttaa variantin (kokonaisluvun), joka sisältää määritetyn osan annetusta päivämäärästä.
| Varoitus Tämän funktion käytössä on ongelma. Joidenkin kalenterivuosien viimeinen maanantai voidaan palauttaa viikkona 53, jolloin sen pitäisi olla viikko 1. Lisätietoja ja vaihtoehtoinen menetelmä on artikkelissa Muotoile- tai DatePart-funktiot voivat palauttaa väärän viikkonumeron viime maanantaille vuonna. |
|---|
Syntaksi
DatePart(interval, date [, firstdayofweek] [, firstweekofyear] )
DatePart-funktion syntaksilla on seuraavat argumentit:
| Argumentti | Kuvaus |
|---|---|
| aikaväli | Pakollinen. Merkkijonolauseke, joka on palautettava aikaväli. |
| päivämäärä | Pakollinen. Muuttuja-arvo (päivämäärä), jonka haluat arvioida. |
| viikonensimmäinenpäivä | Valinnainen. Vakio, joka määrittää viikon ensimmäisen päivän. Jos tätä argumenttia ei määritetä, laskutoimituksessa käytetään oletusasetusta, joka on sunnuntai. |
| vuodenensimmäinenviikko | Valinnainen. Vakio, joka määrittää vuoden ensimmäisen viikon. Jos tätä ei määritetä, ensimmäisen viikon oletetaan olevan viikko, jolloin tammikuun 1. päivä tapahtuu. |
Asetukset
Väliargumentilla on seuraavat asetukset:
| Asetus | Kuvaus |
|---|---|
| yyyy | Vuosi |
| q | Vuosineljännes |
| m | Kuukausi |
| y | Vuoden päivä |
| d | Päivä |
| w | Viikonpäivä |
| ww | Viikko |
| h | Tunti |
| n | Minuutti |
| s | Sekunti |
Viikonensimmäinenpäivä -argumentilla on seuraavat asetukset:
| Vakio | Arvo | Kuvaus |
|---|---|---|
| vbUseSystem | 0 | Käytä NLS API -asetusta. |
| vbSunday | 1 | Sunnuntai (oletus) |
| vbMonday | 2 | Maanantai |
| vbTuesday | 3 | Tiistai |
| vbWednesday | 4 | Keskiviikko |
| vbThursday | 5 | Torstai |
| vbFriday | 6 | Perjantai |
| vbSaturday | 7 | Lauantai |
Ensimmäisen viikon vuoden argumentilla on seuraavat asetukset:
| Vakio | Arvo | Kuvaus |
|---|---|---|
| vbUseSystem | 0 | Käytä NLS API -asetusta. |
| vbFirstJan1 | 1 | Aloita viikosta, jossa on 1. tammikuuta (oletus). |
| vbFirstFourDays | 2 | Aloita ensimmäisestä viikosta, jossa on vähintään neljä uuden vuoden päivää. |
| vbFirstFullWeek | 3 | Aloita vuoden ensimmäisestä täydestä viikosta. |
Huomautuksia
DatePart-funktiolla lasketaan päivämäärä ja palautetaan tietty aikaväli. Voit laskea DatePart-funktiolla esimerkiksi viikonpäivän tai kuluvan tunnin.
Viikonensimmäinenpäivä-argumentti vaikuttaa laskutoimituksiin, joissa käytetään w- ja ww-aikavälisymboleja.
Jos päivämäärä on päivämääräliteraali, määritetystä vuodesta tulee pysyvä osa kyseistä päivämäärää. Jos päivämäärä kirjoitetaan kuitenkin lainausmerkkeihin (” ”) ja vuosi jätetään pois, kuluva vuosi lisätään koodiin aina, kun päivämäärä-lauseke lasketaan. Näin voidaan kirjoittaa koodia, joka on käyttökelpoista eri vuosina.
Huomautus
Jos kalenterin ominaisuusasetus on Gregoriaaninen, päivämäärä-argumenttien päivämäärä täytyy antaa gregoriaanisen kalenterin mukaisena. Islamilaista kalenteria käytettäessä päivämäärä täytyy antaa islamilaisen kalenterin mukaisena.
Funktion palauttama päivämääräosa ilmoitetaan käytössä olevan arabialaisen kalenterin aikaväliyksikön mukaisesti. Jos käytössä on esimerkiksi islamilainen kalenteri ja palautettava päivämääräosa on vuosi, vuosiarvo ilmoitetaan islamilaisen kalenterin vuotena.
Esimerkkejä kyselystä
| Lauseke | Tulokset |
|---|---|
| SELECT DatePart("yyyy",[DateofSale]) AS NewDate FROM ProductSales; | Palauttaa "DateofSale"-kentän päivämääräarvojen "Vuosi". |
| SELECT DatePart("q",[DateofSale]) AS NewDate FROM ProductSales; | Palauttaa "Vuosineljännes" (kalenterivuoden perusteella) päivämääräarvot kentälle "DateofSale". |
| SELECT DatePart("y",[DateofSale]) AS NewDate FROM ProductSales; | Palauttaa "Vuoden päivä" (1–365) päivämääräarvoista kentän "DateofSale". |
| SELECT DatePart("d",[DateofSale]) AS NewDate FROM ProductSales; | Palauttaa DateofSale-kentän päivämääräarvojen päivän. |
| SELECT DatePart("w",[DateofSale]) AS NewDate FROM ProductSales; | Palauttaa "Viikonpäivä" (1–7, jossa 1 edustaa sunnuntaita) päivämääräarvoista kentässä "DateofSale". |
| SELECT DatePart("ww",[DateofSale]) AS NewDate FROM ProductSales; | Palauttaa "DateofSale" -kentän päivämääräarvojen viikkonumeron (1–52). |
| SELECT DatePart("h",[DateTime]) AS NewDate FROM ProductSales; | Palauttaa "DateTime"-kentän päivämääräarvojen "Tunti". |
| SELECT DatePart("n",[DateTime]) AS NewDate FROM ProductSales; | Palauttaa Päivämääräaika-kentän päivämääräarvojen Minuutit-arvon. |
| SELECT DatePart("s",[DateTime]) AS NewDate FROM ProductSales; | Palauttaa Päivämääräaika-kentän päivämääräarvojen sekunnit. |
VBA-esimerkki
Huomautus
Seuraavissa esimerkeissä kerrotaan, kuinka tätä funktiota käytetään Visual Basic for Applications (VBA) -moduulissa. Jos haluat lisätietoja VBA:n käytöstä, valitse Sovelluskehittäjän opasHaku-kentän viereisestä luettelosta ja anna yksi tai useampi hakuehto hakukenttään.
Tässä esimerkissä käytetään DatePart-funktiota ja lasketaan, mihin vuosineljännekseen tietty päivämäärä sijoittuu.
Dim TheDate As Date ' Declare variables.
Dim Msg
TheDate = InputBox("Enter a date:")
Msg = "Quarter: " & DatePart("q", TheDate)
MsgBox Msg