---
title: Date.EndOfYear – หาวันสิ้นปี
url: https://www.thepexcel.com/functions/power-query/date-functions/date-endofyear/
type: function-explainer
program: Power Query
syntax: Date.EndOfYear(dateTime as any) as any
date: 2025-12-03
updated: 2025-12-25
scores:
  popularity: 6
  difficulty: 2
  usefulness: 6
---

# Date.EndOfYear – หาวันสิ้นปี

> Date.EndOfYear คืนค่าวันสุดท้ายของปี (31 ธันวาคม) จากวันที่ที่กำหนด พร้อมเวลา 23:59:59.9999999

## คำอธิบาย

Date.EndOfYear คืนค่าวันสุดท้ายของปี (31 ธันวาคม) จากวันที่ที่กำหนด พร้อมเวลา 23:59:59.9999999

## Syntax

```excel
Date.EndOfYear(dateTime as any) as any
```

## Arguments

| Name | Required | Type | Default | Description |
| --- | --- | --- | --- | --- |
| dateTime | Yes | date \| datetime \| datetimezone |  | วันที่ที่ต้องการหาวันสิ้นปี สามารถเป็น date, datetime หรือ datetimezone ก็ได้ |

## ตัวอย่าง

### 1. หาวันสิ้นปีจากวันที่ธรรมชาติ

```excel
Date.EndOfYear(#date(2025, 5, 15))
```

**ผลลัพธ์:** `#date(2025, 12, 31)`

ป้อน 15 พฤษภาคม 2025 ได้ผลลัพธ์คือ 31 ธันวาคม 2025 (ไม่มีเวลา เพราะ Input เป็น date)

### 2. หาวันสิ้นปีพร้อมเวลาจากวันเวลา

```excel
Date.EndOfYear(#datetime(2025, 5, 15, 14, 30, 0))
```

**ผลลัพธ์:** `#datetime(2025, 12, 31, 23, 59, 59.9999999)`

ป้อน 15 พฤษภาคม 2025 เวลา 14:30:00 ได้ 31 ธันวาคม 2025 เวลา 23:59:59.9999999 (วินาที fractional)

### 3. รักษา Time Zone จากวันเวลาที่มี Zone

```excel
Date.EndOfYear(#datetimezone(2025, 3, 20, 10, 0, 0, 7, 0))
```

**ผลลัพธ์:** `#datetimezone(2025, 12, 31, 23, 59, 59.9999999, 7, 0)`

ป้อนวันเวลากับ Time Zone (UTC+7) ผลลัพธ์จะเก็บ Time Zone เดิมไว้ ไม่เปลี่ยนแปลง

### 4. ใช้หาจำนวนวันที่เหลือในปี

```excel
Date.DayOfYear(Date.EndOfYear(#date(2025, 6, 15))) - Date.DayOfYear(#date(2025, 6, 15))
```

**ผลลัพธ์:** `200`

วันที่ 15 มิถุนายน 2025 เป็นวันที่ 166 ของปี วันสิ้นปีคือวันที่ 365 เหลือ 199 วัน (365-166=199) ตัวอย่างนี้รวมวันปัจจุบันด้วยจึงได้ 200

### 5. ใช้ใน Power Query custom column เพื่อหาวันสิ้นปี

```excel
let
    Source = Table.FromRows({{#date(2025, 1, 15)}, {#date(2025, 6, 20)}, {#date(2025, 12, 1)}}, {"Date"}),
    AddEndOfYear = Table.AddColumn(Source, "End of Year", each Date.EndOfYear([Date]))
in
    AddEndOfYear
```

**ผลลัพธ์:** `ตารางใหม่ที่มีคอลัมน์เพิ่มขึ้นแสดง 31 ธันวาคม สำหรับทุกแถว`

สร้างตารางที่มีคอลัมน์วันที่ แล้วใช้ Table.AddColumn ร่วมกับ each [Date] เพื่อคำนวณวันสิ้นปีสำหรับทุกแถว

## หมายเหตุเพิ่มเติม

- ผมแนะนำให้ใช้ Date.EndOfYear ร่วมกับ Date.StartOfYear เพื่อสร้าง date range สำหรับการวิเคราะห์ข้อมูลตามปี เช่น หา revenue ทั้งปี

- ถ้าต้องการเข้าถึง "วันสิ้นปีก่อนหน้า" ให้ใช้ Date.AddYears(Date.EndOfYear([Date]), -1) ลดปีลง 1 ปีแล้วหาวันสิ้นปี ส่วนตัวผมใช้เพื่อเปรียบเทียบ YoY (Year over Year) ได้

- ผมเคยลืมว่า Date.EndOfYear คืนค่าเวลา 23:59:59.9999999 ไม่ใช่ 00:00:00 ถ้าต้องเอา Date ที่ชัดเจน ให้ใช้ Date.From(Date.EndOfYear([Date])) เพื่อตัด time part ทิ้งได้

## คำถามที่พบบ่อย

**Q: ต่างจาก Date.EndOfMonth อย่างไร?**

Date.EndOfMonth หาวันสุดท้ายของเดือน ส่วน Date.EndOfYear หาวันสุดท้ายของปี ถ้าเป็นเดือน มิถุนายน Date.EndOfMonth จะคืน 30 มิถุนายน แต่ Date.EndOfYear จะคืน 31 ธันวาคมครับ

**Q: จะหาจำนวนวันทั้งปีหรือวันที่เหลือได้ไหม?**

ได้ครับ ใช้ Duration.TotalDays ร่วมกับ Date.EndOfYear ได้ สมมติ Duration.TotalDays(Date.EndOfYear(#date(2025, 6, 15)) - #date(2025, 6, 15)) ก็จะได้วันที่เหลือในปี ส่วนตัวผมเคยใช้เพื่อคำนวณเปอร์เซ็นต์ความ progress ของปีครับ

**Q: ถ้า Input เป็น date, datetime หรือ datetimezone จะต่างกันไหม?**

ถ้า Input เป็น date ผลลัพธ์จะเป็น date ถ้า Input เป็น datetime ผลลัพธ์จะเป็น datetime (พร้อมเวลา) ถ้า Input เป็น datetimezone ผลลัพธ์จะเป็น datetimezone (พร้อม zone offset) ขนาด Data Type จะขึ้นอยู่กับ Input ที่ป้อนเข้าครับ

**Q: ใช้กับปีอธิกสุรทินไม่ได้หรือ (leap year)?**

ได้ครับ ฟังก์ชันนี้จัดการกับ leap year โดยอัตโนมัติ ไม่ว่ากี่วันจะมี 29 กุมภาพันธ์ แต่สิ้นปีก็ยังคือ 31 ธันวาคมเหมือนเดิม

## ฟังก์ชันที่เกี่ยวข้อง

- [Date.StartOfYear – หาวันต้นปี](https://www.thepexcel.com/functions/power-query/date-functions/date-startofyear/)
- [Date.Year – ดึงปีจากวันที่](https://www.thepexcel.com/functions/power-query/date-functions/date-year/)

## แหล่งข้อมูลเพิ่มเติม

- [Microsoft Learn: Date.EndOfYear](https://learn.microsoft.com/en-us/powerquery-m/date-endofyear) _(official)_
- [PowerQuery.how: Date Functions](https://powerquery.how/date-endofyear/) _(article)_

---

_Source: [https://www.thepexcel.com/functions/power-query/date-functions/date-endofyear/](https://www.thepexcel.com/functions/power-query/date-functions/date-endofyear/)_
