Thep Excel

Date.AddYearsเพิ่มจำนวนปีให้กับวันที่

Date.AddYears เพิ่มจำนวนปีที่ระบุให้กับค่า date datetime หรือ datetimezone คืนค่าเดียวกันกับประเภทข้อมูลอินพุต เก็บรักษาส่วนของเวลาไว้เหมือนเดิม ฟังก์ชันนี้จำเป็นสำหรับการคำนวณวันครบรอบปี การวางแผนระยะยาว และการวิเคราะห์ข้อมูลตามชั้นปี

fx
=Date.AddYears(dateTime, numberOfYears) as any

ความนิยม6/10
ความยาก3/10
ประโยชน์7/10

อัปเดต 12 December 2025

Syntax & Arguments

อาร์กิวเมนต์ ชนิด คำอธิบาย
dateTime any ค่า date datetime หรือ datetimezone ที่ต้องการเพิ่มปี สามารถเป็นค่าคงที่หรือมาจากคอลัมน์ในตาราง
numberOfYears number จำนวนปีที่ต้องการเพิ่ม สามารถใช้จำนวนลบเพื่อลบปี (เช่น -1 จะลดปี 1 ปี)

Additional Notes

ฟังก์ชัน Date.AddYears ใช้เพื่อเพิ่มจำนวนปีให้กับค่า date datetime หรือ datetimezone ซึ่งเป็นความต้องการทั่วไปในการทำงานกับข้อมูลวันที่เวลา

สิ่งที่เจ๋งของ Date.AddYears คือมันจัดการกับเรื่องปีอธิกสุรทิน (leap years) อย่างอัจฉริยะ ถ้าคุณเพิ่ม 1 ปีจาก 29 กุมภาพันธ์ 2012 (ปีอธิกสุรทิน) ไปยังปี 2013 (ไม่ใช่ปีอธิกสุรทิน) มันจะ ‘ปรับลง’ เป็น 28 กุมภาพันธ์โดยอัตโนมัติ นอกจากนี้ยังรักษาเวลาไว้ตรงเดิมเสมอ

ส่วนตัวผมชอบใช้ Date.AddYears ในกรณีที่ต้องการคำนวณวันครบรอบหรือหน่วยเวลาที่ยาวนาน เพราะมันชัดเจนกว่า Date.AddMonths(date, 12) ทั้งในแง่ของความเข้าใจและการบำรุงรักษา 😎

How it works

คำนวณวันครบรอบปี

คำนวณวันครบรอบปีที่ n ของเหตุการณ์หรือการเริ่มต้นของบริการ

วางแผนระยะยาว

กำหนดจุดสิ้นสุดของโครงการหรือสัญญาที่มีระยะเวลานับเป็นปี

Examples

ตัวอย่างที่ 1: เพิ่ม 4 ปีให้กับวันที่Date.AddYears(#date(2011, 5, 14), 4)

เพิ่ม 4 ปีให้กับ 14 พฤษภาคม 2011 ได้ผลลัพธ์เป็น 14 พฤษภาคม 2015 ฟังก์ชันจะคงเดือนและวันไว้เหมือนเดิม แต่เปลี่ยนปีเท่านั้น

fx
=Date.AddYears(#date(2011, 5, 14), 4)

ผลลัพธ์#date(2015, 5, 14)
ตัวอย่างที่ 2: เพิ่ม 10 ปีให้กับ datetime พร้อมเวลาDate.AddYears(#datetime(2011, 5, 14, 8, 15, 22), 10)

เพิ่ม 10 ปีให้กับ 14 พฤษภาคม 2011 เวลา 08:15:22 ได้ผลลัพธ์เป็น 14 พฤษภาคม 2021 เวลา 08:15:22 โปรดสังเกตว่าเวลา (hours, minutes, seconds) ไม่เปลี่ยนแปลง

fx
=Date.AddYears(#datetime(2011, 5, 14, 8, 15, 22), 10)

ผลลัพธ์#datetime(2021, 5, 14, 8, 15, 22)
ตัวอย่างที่ 3: ลบปีด้วยจำนวนลบDate.AddYears(#date(2011, 5, 14), -2)

ลบ 2 ปีจาก 14 พฤษภาคม 2011 ได้ผลลัพธ์เป็น 14 พฤษภาคม 2009 ใช้เมื่อต้องการคำนวณไปยังปีที่ผ่านมา

fx
=Date.AddYears(#date(2011, 5, 14), -2)

ผลลัพธ์#date(2009, 5, 14)
ตัวอย่างที่ 4: จัดการปีอธิกสุรทิน (leap year)Date.AddYears(#date(2012, 2, 29), 1)

เมื่อเพิ่ม 1 ปีจาก 29 กุมภาพันธ์ 2012 (ปีอธิกสุรทิน) ไปยังปี 2013 (ไม่ใช่ปีอธิกสุรทิน) ระบบจะปรับเป็น 28 กุมภาพันธ์โดยอัตโนมัติเนื่องจาก 2013 ไม่มี 29 กุมภาพันธ์

fx
=Date.AddYears(#date(2012, 2, 29), 1)

ผลลัพธ์#date(2013, 2, 28)
ตัวอย่างที่ 5: ใช้กับ datetimezoneDate.AddYears(#datetimezone(2011, 5, 14, 8, 15, 22, 8, 0), 5)

ทำงานกับ datetimezone เช่นเดียวกับ datetime โดยรักษาข้อมูล timezone offset (+08:00) ไว้

fx
=Date.AddYears(#datetimezone(2011, 5, 14, 8, 15, 22, 8, 0), 5)

ผลลัพธ์#datetimezone(2016, 5, 14, 8, 15, 22, 8, 0)

FAQs

ถ้าฉันเพิ่ม 1 ปีจาก 29 กุมภาพันธ์ 2012 จะเกิดอะไรขึ้น?+

ฟังก์ชันจะส่งคืน 28 กุมภาพันธ์ 2013 (ปีที่ไม่ใช่ปีอธิกสุรทิน) เนื่องจากปี 2013 ไม่มี 29 กุมภาพันธ์ ระบบทำการปรับลงโดยอัตโนมัติเพื่อให้ได้วันที่ที่ถูกต้อง

Date.AddYears กับ Date.AddMonths(date, 12) ต่างกันหรือไม่?+

ในกรณีส่วนใหญ่ ผลลัพธ์เหมือนกัน แต่ Date.AddYears ชัดเจนและอ่านได้ง่ายกว่า เมื่อทำงานกับจำนวนปี ลองใช้ Date.AddYears เพราะมันแสดงจุดประสงค์ได้ดีกว่า

ฉันสามารถใช้ค่าศูนย์ (0) ได้หรือไม่?+

ใช่ได้ Date.AddYears(date, 0) จะคืนค่าวันที่เดิมโดยไม่เปลี่ยนแปลง ซึ่งอาจดูโง่ แต่บางครั้งมีประโยชน์ในลอจิกเงื่อนไขที่ซับซ้อน

จำนวนปีที่สามารถใช้ได้มีขีดจำกัดหรือไม่?+

ทางทฤษฎีไม่มีขีดจำกัด แต่ Power Query ทำงานกับวันที่ระหว่าง 0 ธันวาคม 1899 ถึง 31 ธันวาคม 9999 ดังนั้นต้องแน่ใจว่าผลลัพธ์อยู่ในช่วงนี้

Resources & Related

ฟังก์ชันที่ผู้เขียนโยงไว้กับ Date.AddYears จัดกลุ่มตามหมวด · ชี้ที่ชื่อใดชื่อหนึ่ง แล้วฟังก์ชันที่ใช้คู่กันจะมีจุดทอง

ฟังก์ชันนี้Date.AddYearsDate functions
Date functions (7)
Date.AddDays

Date.AddDays ใช้เพิ่มหรือลดจำนวนวันให้กับค่า Date, DateTime หรือ DateTimeZone โดยระบุจำนวนวันที่ต้องการ (ใส่ค่าบวกเพื่อเพิ่มวัน หรือค่าลบเพื่อลดวัน)

Date.AddMonths

Date.AddMonths เพิ่มจำนวนเดือนที่ระบุให้กับค่าวันที่ โดยคืนค่า date datetime หรือ datetimezone ขึ้นอยู่กับประเภทข้อมูลอินพุต ฟังก์ชันนี้จำเป็นสำหรับการคำนวณวันครบกำหนด กำหนดตารางเวลาโครงการ และการวิเคราะห์ข้อมูลตามช่วงเวลา

Date.AddQuarters

Date.AddQuarters เพิ่มจำนวนไตรมาส (ไตรมาส = 3 เดือน) ให้กับค่า date datetime หรือ datetimezone ที่กำหนด คืนค่าเดียวกันกับประเภทข้อมูลอินพุต ฟังก์ชันนี้มีประโยชน์สำหรับการวิเคราะห์ข้อมูลทางการเงินตามไตรมาส และการวางแผนการจัดการเชิงกลยุทธ์

Date.AddWeeks

Date.AddWeeks เพิ่มจำนวนสัปดาห์ (สัปดาห์ = 7 วัน) ให้กับค่า date, datetime หรือ datetimezone ที่กำหนด เหมาะสำหรับการคำนวณตามรอบเวลาประจำสัปดาห์

Date.EndOfYear

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

Date.FromText

Date.FromText แปลงค่าข้อความให้เป็นค่าวันที่ รองรับการระบุรูปแบบวันที่และภาษาที่แตกต่างกัน ฟังก์ชันนี้จำเป็นสำหรับการอ่านข้อมูลวันที่จากแหล่งข้อมูลภายนอก การจัดการข้อมูลที่มีรูปแบบวันที่หลากหลาย และการทำให้ข้อมูลเป็นมาตรฐาน

Date.Year

Date.Year คืนค่าปีเป็นตัวเลข 4 หลักจากข้อมูล DateTime ใช้สำหรับดึงเฉพาะปีออกมาจากวันที่เพื่อนำไปจัดกลุ่มข้อมูลหรือกรองตามปี

Comments

อีเมลของคุณจะไม่ถูกเผยแพร่