ส่งกลับ ตัวแปร (จำนวนเต็ม) ที่มีส่วนที่ระบุของวันที่ระบุ
| คำ เตือน มีปัญหากับการใช้ฟังก์ชันนี้ วันจันทร์สุดท้ายในบางปีปฏิทินสามารถถูกส่งกลับเป็นสัปดาห์ 53 เมื่อควรเป็นสัปดาห์ที่ 1 สําหรับข้อมูลเพิ่มเติมและวิธีแก้ไขปัญหาชั่วคราว ให้ดูที่ ฟังก์ชัน Format หรือ DatePart สามารถส่งกลับจํานวนสัปดาห์ที่ไม่ถูกต้องสําหรับวันจันทร์สุดท้ายในปี |
|---|
ไวยากรณ์
DatePart(interval, date [, firstdayofweek] [, firstweekofyear] )
ไวยากรณ์ของฟังก์ชัน DatePart มีอาร์กิวเมนต์ดังนี้
| อาร์กิวเมนต์ | คำอธิบาย |
|---|---|
| ช่วงเวลา | จำเป็น นิพจน์สตริงที่เป็นช่วงของเวลาที่คุณต้องการส่งกลับ |
| วัน | จำเป็น ค่าตัวแปร (วันที่) ที่คุณต้องการประเมิน |
| วันแรกของสัปดาห์ | ไม่จำเป็น ค่าคงที่ที่ระบุวันแรกของสัปดาห์ ถ้าไม่ระบุ จะถือว่าเป็นวันอาทิตย์ |
| สัปดาห์แรกของปี | ไม่จำเป็น ค่าคงที่ที่ระบุสัปดาห์แรกของปี ถ้าไม่ได้ระบุไว้ จะถือว่าสัปดาห์แรกเป็นสัปดาห์ที่มีวันที่ 1 มกราคม |
การตั้งค่า
อาร์กิวเมนต์ ช่วงเวลา มีการตั้งค่าเหล่านี้:
| การตั้งค่า | คำอธิบาย |
|---|---|
| yyyy | ปี |
| q | ไตรมาส |
| m | เดือน |
| y | วันของปี |
| d | วัน |
| w | วันทำงาน |
| ww | สัปดาห์ |
| h | ชั่วโมง |
| n | นาที |
| s | วินาที |
อาร์กิวเมนต์ วันแรกของสัปดาห์ มีการตั้งค่าเหล่านี้:
| คง | ค่า | คำอธิบาย |
|---|---|---|
| vbUseSystem | 0 | ใช้การตั้งค่า NLS API |
| vbSunday | 1 | วันอาทิตย์ (ค่าเริ่มต้น) |
| vbMonday | 2 | วันจันทร์ |
| vbTuesday | 3 | วันอังคาร |
| vbWednesday | 4 | วันพุธ |
| vbThursday | 5 | วันพฤหัสบดี |
| vbFriday | 6 | วันศุกร์ |
| vbSaturday | 7 | วันเสาร์ |
อาร์กิวเมนต์ สัปดาห์แรกของปี มีการตั้งค่าเหล่านี้:
| คง | ค่า | คำอธิบาย |
|---|---|---|
| vbUseSystem | 0 | ใช้การตั้งค่า NLS API |
| vbFirstJan1 | 1 | เริ่มต้นด้วยสัปดาห์ที่มีวันที่ 1 มกราคม (ค่าเริ่มต้น) |
| vbFirstFourDays | 2 | เริ่มต้นด้วยสัปดาห์แรกที่มีอย่างน้อยสี่วันในปีใหม่ |
| vbFirstFullWeek | 3 | เริ่มต้นด้วยสัปดาห์เต็มสัปดาห์แรกของปี |
ข้อสังเกต
คุณสามารถใช้ฟังก์ชัน DatePart เพื่อประเมินวันที่และส่งกลับช่วงเวลาที่ระบุได้ ตัวอย่างเช่น คุณอาจใช้ DatePart เพื่อคํานวณวันของสัปดาห์หรือชั่วโมงปัจจุบัน
อาร์กิวเมนต์ วันแรกของสัปดาห์ มีผลต่อการคํานวณที่ใช้สัญลักษณ์ช่วงเวลา "w" และ "ww"
ถ้า วันที่ เป็นวันที่ตามตัวอักษร ปีที่ระบุจะกลายเป็นส่วนถาวรของวันที่นั้น อย่างไรก็ตาม ถ้า วันที่ อยู่ในเครื่องหมายอัญประกาศคู่ (" ") และคุณละเว้นปี ปีปัจจุบันจะถูกแทรกลงในโค้ดของคุณทุกครั้งที่นิพจน์ วันที่ ถูกประเมิน สิ่งนี้ทําให้สามารถเขียนรหัสที่สามารถใช้ในปีที่แตกต่างกันได้
หมายเหตุ
สําหรับวันที่ ถ้าการตั้งค่าคุณสมบัติ Calendar เป็นคริสต์ศักดิก ถ้าปฏิทินเป็นฮิจเราะห์ วันที่ที่ระบุต้องเป็นฮิจเราะห์
ส่วนของวันที่ที่ส่งคืนจะอยู่ในหน่วยช่วงเวลาของปฏิทินอาหรับปัจจุบัน ตัวอย่างเช่น ถ้าปฏิทินปัจจุบันคือฮิจเราะห์และส่วนของวันที่ที่จะส่งกลับคือปี ค่าปีจะเป็นปีฮิจเราะห์
ตัวอย่างคิวรี
| นิพจน์ | ผลลัพธ์ |
|---|---|
| SELECT DatePart("yyyy",[DateofSale]) AS NewDate FROM ProductSales; | ส่งกลับ 'ปี' ของค่าวันที่ของเขตข้อมูล "DateofSale" |
| SELECT DatePart("q",[DateofSale]) AS NewDate FROM ProductSales; | ส่งกลับ 'ไตรมาส' (ยึดตามปีปฏิทิน) ของค่าวันที่ของเขตข้อมูล "DateofSale" |
| SELECT DatePart("y",[DateofSale]) AS NewDate FROM ProductSales; | ส่งกลับ 'วันของปี' (1 ถึง 365) ของค่าวันที่ของเขตข้อมูล "DateofSale" |
| SELECT DatePart("d",[DateofSale]) AS NewDate FROM ProductSales; | ส่งกลับ 'วัน' ของค่าวันที่ของเขตข้อมูล "DateofSale" |
| SELECT DatePart("w",[DateofSale]) AS NewDate FROM ProductSales; | ส่งกลับ 'วันทํางาน' (ตั้งแต่ 1 ถึง 7 ที่ 1 แสดงถึงวันอาทิตย์) ของค่าวันที่ของเขตข้อมูล "DateofSale" |
| SELECT DatePart("ww",[DateofSale]) AS NewDate FROM ProductSales; | ส่งกลับ 'จํานวนสัปดาห์' (จาก 1 ถึง 52) ของค่าวันที่ของเขตข้อมูล "DateofSale" |
| SELECT DatePart("h",[DateTime]) AS NewDate FROM ProductSales; | ส่งกลับ 'ชั่วโมง' ของค่าวันที่ของเขตข้อมูล "DateTime" |
| SELECT DatePart("n",[DateTime]) AS NewDate FROM ProductSales; | ส่งกลับ 'นาที' ของค่าวันที่ของเขตข้อมูล "DateTime" |
| SELECT DatePart("s",[DateTime]) AS NewDate FROM ProductSales; | ส่งกลับ 'วินาที' ของค่าวันที่ของเขตข้อมูล "DateTime" |
ตัวอย่าง VBA
หมายเหตุ
ตัวอย่างต่อไปนี้จะสาธิตการใช้ฟังก์ชันนี้ในโมดูล Visual Basic for Applications (VBA) สําหรับข้อมูลเพิ่มเติมเกี่ยวกับการทํางานกับ VBA ให้เลือก การอ้างอิงสําหรับนักพัฒนา ในรายการดรอปดาวน์ที่อยู่ถัดจาก ค้นหา แล้วใส่คําอย่างน้อยหนึ่งคําในกล่องค้นหา
ตัวอย่างนี้จะใช้วันที่ และใช้ฟังก์ชัน DatePart แสดงไตรมาสของปีที่เกิดขึ้น
Dim TheDate As Date ' Declare variables.
Dim Msg
TheDate = InputBox("Enter a date:")
Msg = "Quarter: " & DatePart("q", TheDate)
MsgBox Msg