ส่งกลับ ตัวแปร (วันที่) สำหรับปี เดือน และวันที่ระบุ
ไวยากรณ์
DateSerial(year, month, day)
คําเตือน ตรวจสอบให้แน่ใจว่าอาร์กิวเมนต์อยู่ในช่วงของค่าที่ถูกต้อง อาร์กิวเมนต์ที่ไม่ถูกต้องอาจทําให้ได้ผลลัพธ์ที่ไม่ถูกต้อง
ไวยากรณ์ของฟังก์ชัน DateSerial มีอาร์กิวเมนต์ดังต่อไปนี้
| อาร์กิวเมนต์ | คำอธิบาย |
|---|---|
| ปี | จำเป็น จํานวนเต็ม ตัวเลขระหว่าง 100 ถึง 9999 ครอบคลุม หรือนิพจน์ตัวเลข |
| เดือน | จำเป็น จํานวนเต็ม นิพจน์ตัวเลขใดก็ได้ |
| วัน | จำเป็น จํานวนเต็ม นิพจน์ตัวเลขใดก็ได้ |
ข้อสังเกต
เมื่อต้องการระบุวันที่ เช่น 31 ธันวาคม 1991 ช่วงของตัวเลขสําหรับแต่ละอาร์กิวเมนต์ DateSerial ควรอยู่ในช่วงที่ยอมรับได้สําหรับหน่วย นั่นคือ 1–31 สําหรับวัน และ 1–12 สําหรับเดือน อย่างไรก็ตาม คุณยังสามารถระบุวันที่สัมพัทธ์สําหรับแต่ละอาร์กิวเมนต์ได้โดยใช้นิพจน์ตัวเลขใดๆ ที่แสดงจํานวนวัน เดือน หรือปีก่อนหรือหลังวันที่ใดวันที่หนึ่ง
ตัวอย่างต่อไปนี้ใช้นิพจน์ตัวเลขแทนตัวเลขวันที่สัมบูรณ์ ที่นี่ ฟังก์ชัน DateSerial จะส่งกลับวันที่ที่เป็นวันก่อนวันแรก (),1 - 1 สองเดือนก่อนเดือนสิงหาคม (),8 - 2 10 ปีก่อน 1990 (1990 - 10) หรืออีกนัยหนึ่งคือ 31 พฤษภาคม 1980
DateSerial(1990 - 10, 8 - 2, 1 - 1)
เลขสองหลักปีสําหรับอาร์กิวเมนต์ปี จะถูก แปลความโดยยึดตามการตั้งค่าเครื่องที่ผู้ใช้กําหนด การตั้งค่าเริ่มต้นคือค่าระหว่าง 0 และ 29 ครอบคลุม จะถูกตีความเป็นปี 2000–2029 ค่าเริ่มต้นระหว่าง 30 ถึง 99 ถูกแปลเป็นปี 1930–1999 สําหรับอาร์กิวเมนต์ปี อื่นๆ ทั้งหมด ให้ใช้เลขสี่หลัก (ตัวอย่างเช่น 1800)
Windows เวอร์ชันก่อนหน้า Windows 2000 จะแปลข้อมูลปีแบบสองหลักตามค่าเริ่มต้นที่อธิบายไว้ข้างต้น เพื่อให้แน่ใจว่าฟังก์ชันส่งกลับค่าที่เหมาะสม ให้ใช้เลขปีสี่หลัก
เมื่ออาร์กิวเมนต์ใดๆ เกินช่วงที่ยอมรับได้สําหรับอาร์กิวเมนต์นั้น อาร์กิวเมนต์จะเพิ่มขึ้นเป็นหน่วยถัดไปที่มีขนาดใหญ่ขึ้นตามความเหมาะสม ตัวอย่างเช่น ถ้าคุณระบุ 35 วัน ระบบจะประเมินเป็นหนึ่งเดือนและจํานวนวัน ซึ่งขึ้นอยู่กับตําแหน่งในปีที่นําไปใช้ ถ้าอาร์กิวเมนต์เดี่ยวใดอยู่นอกช่วง -32,768 ถึง 32,767 จะเกิดข้อผิดพลาด ถ้าวันที่ที่ระบุโดยอาร์กิวเมนต์ทั้งสามอยู่นอกช่วงของวันที่ที่ยอมรับได้ จะเกิดข้อผิดพลาดขึ้น
หมายเหตุ
สําหรับปีเดือนและวัน ถ้าการตั้งค่าคุณสมบัติ Calendar เป็นแบบคริสต์ศักราช ค่าที่ให้มาจะถือว่าเป็นแบบคริสต์ศักราช ถ้าการตั้งค่าคุณสมบัติ Calendar เป็นฮิจเราะห์ ค่าที่ให้มาจะถือว่าเป็นฮิจเราะห์
ส่วนวันที่ที่ส่งกลับจะเป็นหน่วยช่วงเวลาของปฏิทิน Visual Basic ปัจจุบัน ตัวอย่างเช่น ถ้าปฏิทินปัจจุบันคือฮิจเราะห์และส่วนวันที่ที่จะถูกส่งกลับเป็นปี ค่าของปีจะเป็นปีฮิจเราะห์ สําหรับอาร์กิวเมนต์ year ค่าระหว่าง 0 และ 99 นับ จะถูกแปลเป็นปี 1400-1499 สําหรับค่าปี อื่นๆ ทั้งหมด ให้ใช้ปีสี่หลักที่สมบูรณ์ (ตัวอย่างเช่น 1520)
ตัวอย่างคิวรี
| นิพจน์ | ผลลัพธ์ |
|---|---|
| SELECT Dateserial(2018,12,13) AS NewDate FROM ProductSales; | ส่งกลับ "วันที่" สําหรับปี เดือน และวันที่ระบุที่ใส่ในอาร์กิวเมนต์ของฟังก์ชัน และแสดงในคอลัมน์ "วันที่ใหม่" ผลลัพธ์: "12/13/2018" |
ตัวอย่าง VBA
หมายเหตุ
ตัวอย่างต่อไปนี้จะสาธิตการใช้ฟังก์ชันนี้ในโมดูล Visual Basic for Applications (VBA) สําหรับข้อมูลเพิ่มเติมเกี่ยวกับการทํางานกับ VBA ให้เลือก การอ้างอิงนักพัฒนาในรายการ ดรอปดาวน์ที่อยู่ถัดจาก ค้นหา แล้วใส่คําอย่างน้อยหนึ่งคําในกล่องค้นหา
ตัวอย่างนี้ใช้ฟังก์ชัน DateSerial เพื่อส่งกลับวันที่สําหรับปี เดือน และวันที่ระบุ
Dim MyDate ' MyDate contains the date for February 12, 1969. MyDate = DateSerial(1969, 2, 12) ' Return a date.