Thep Excel

Date.StartOfYear – หาวันต้นปี

Date.StartOfYear คืนค่าวันแรกของปี (1 มกราคม เวลา 00:00:00) จากวันที่ใดๆ ที่ส่งเข้ามา ใช้สำหรับคำนวณตัวชี้วัดแบบ Year-To-Date หรือจัดกลุ่มข้อมูลตามปี

=Date.StartOfYear(dateTime as any) as any

By ThepExcel AI Agent
3 December 2025

Function Metrics


Popularity
6/10

Difficulty
2/10

Usefulness
6/10

Syntax & Arguments

=Date.StartOfYear(dateTime as any) as any

Argument Type Required Default Description
dateTime date | datetime | datetimezone Yes วันที่หรือวันเวลาใดๆ ที่อยู่ในปีนั้น ฟังก์ชันจะคืนค่าวันแรกของปี

Examples

หาวันต้นปีจากวันที่
Date.StartOfYear(#date(2025, 5, 15))
ส่งวันที่ 15 พฤษภาคม 2025 เข้าไป ฟังก์ชันจะคืนค่า 1 มกราคม 2025
Power Query Formula:

=Date.StartOfYear(#date(2025, 5, 15))

Result:

#date(2025, 1, 1)

ใช้กับ datetime
Date.StartOfYear(#datetime(2025, 10, 10, 8, 30, 45))
ส่งวันเวลา 10 ตุลาคม 2025 เวลา 08:30:45 เข้าไป จะได้ 1 มกราคม 2025 เวลา 00:00:00
Power Query Formula:

=Date.StartOfYear(#datetime(2025, 10, 10, 8, 30, 45))

Result:

#datetime(2025, 1, 1, 0, 0, 0)

ใช้ใน Power Query Table
Table.AddColumn(#"Sales Data", "Year Start", each Date.StartOfYear([OrderDate]))
ใช้กับ each เพื่อใช้กับแต่ละแถว ฟังก์ชันจะหาวันต้นปีของวันที่ในคอลัมน์ OrderDate
Power Query Formula:

= Table.AddColumn(#"Sales Data", "Year Start", each Date.StartOfYear([OrderDate]))

Result:

เพิ่มคอลัมน์ใหม่ชื่อ Year Start ที่เก็บวันต้นปี

คำนวณ Year-To-Date Days
Duration.Days(Date.StartOfYear(DateTime.Now()) - DateTime.Now())
คำนวณระยะเวลาจากวันต้นปีถึงวันปัจจุบัน ใช้ Duration.Days เพื่อแปลงเป็นจำนวนวัน
Power Query Formula:

= Duration.Days(Date.StartOfYear(DateTime.Now()) - DateTime.Now())

Result:

จำนวนวันตั้งแต่ต้นปีถึงวันนี้ (เป็นลบ)

FAQs

Date.StartOfYear แตกต่างจาก Date.StartOfMonth อย่างไร?

ผมใช้ Date.StartOfYear เวลาต้องการวันต้นปี (1 มกราคม) และใช้ Date.StartOfMonth เวลาต้องการวันต้นเดือน ทั้ง 2 ฟังก์ชันทำงานคล้ายกัน แต่ช่วงเวลาที่ส่งกลับมาต่างกัน

ถ้าส่ง NULL หรือค่าว่างเข้าไป จะเกิดอะไรขึ้น?

ฟังก์ชันจะส่งกลับมาเป็น error หรือ null ขึ้นอยู่กับการตั้งค่า ผมแนะนำให้ใช้ Table.TransformColumns หรือ each เพื่อตรวจสอบค่าก่อน

เวลาไหนที่ผมจะใช้ Date.StartOfYear?

ผมใช้เวลาคำนวณ YTD metrics, จัดกลุ่มข้อมูลตามปี, หรือเปรียบเทียบข้อมูล Year-Over-Year ฟังก์ชันนี้ช่วยหาจุดเริ่มต้นของแต่ละปีได้เร็ว

Resources & Related

Additional Notes

ฟังก์ชัน Date.StartOfYear ใน Power Query ใช้เพื่อหาวันแรกของปีที่ตรงกับวันที่ที่คุณส่งเข้ามา ไม่ว่าจะส่งเข้ามาเป็น date, datetime หรือ datetimezone ตัวฟังก์ชันจะคืนค่าเป็น January 1st ของปีนั้นเสมอ ตั้งเวลาให้เป็น 00:00:00 เสมอ

ที่เจ๋งคือ ฟังก์ชันนี้ทำให้ผมเข้าถึงจุดเริ่มต้นของปีได้อย่างรวดเร็ว ช่วยให้คำนวณ YTD (Year-To-Date) ได้ง่าย และสามารถเปรียบเทียบข้อมูลระหว่างปีได้ อีกทั้งยังใช้สำหรับจัดกลุ่มข้อมูลตามปีอย่างแม่นยำ

ส่วนตัวผม ผมใช้ Date.StartOfYear เวลาทำ Year-Over-Year analysis ก็จะรู้ว่าจุดเริ่มต้นของแต่ละปีอยู่ที่ไหน ทำให้คำนวณช่วงเวลาตั้งแต่ต้นปีถึงวันที่กำหนดได้ถูกต้อง 😎

Leave a Reply

Your email address will not be published. Required fields are marked *