Applies ToExcel for Microsoft 365 Excel 2024 Excel 2021 Excel 2019 Excel 2016

Data Analysis Expressions (DAX) มี 35 ฟังก์ชันสําหรับการรวมและการเปรียบเทียบข้อมูลเมื่อเวลาผ่านไป ฟังก์ชันตัวแสดงเวลาต่างจากฟังก์ชันวันที่และเวลาของ DAX แต่ฟังก์ชันตัวแสดงเวลาไม่มีสิ่งที่คล้ายกันใน Excel ทั้งนี้เนื่องจากฟังก์ชันตัวแสดงเวลาทํางานกับข้อมูลที่มีการเปลี่ยนแปลงอยู่ตลอดเวลา ทั้งนี้ขึ้นอยู่กับบริบทที่คุณเลือกใน PivotTable และการแสดงภาพของ Power View

เมื่อต้องการทํางานกับฟังก์ชันตัวแสดงเวลา คุณจําเป็นต้องมีตารางวันที่รวมอยู่ในตัวแบบข้อมูลของคุณ ตารางวันที่ต้องมีคอลัมน์หนึ่งแถวสําหรับทุกวันของแต่ละปีที่รวมอยู่ในข้อมูลของคุณ คอลัมน์นี้ถือว่าเป็นคอลัมน์วันที่ (แม้ว่าจะสามารถตั้งชื่ออะไรก็ได้ที่คุณต้องการ) ฟังก์ชันตัวแสดงเวลาจํานวนมากต้องการคอลัมน์วันที่เพื่อคํานวณตามวันที่ที่คุณเลือกเป็นเขตข้อมูลในรายงาน ตัวอย่างเช่น ถ้าคุณมีหน่วยวัดที่คํานวณยอดดุลสิ้นไตรมาส-สิ้นสุดโดยใช้ฟังก์ชัน CLOSINGBALANCEQTR เพื่อให้ Power Pivot ทราบเมื่อสิ้นไตรมาสจริงๆ จะต้องอ้างอิงคอลัมน์วันที่ในตารางวันที่เพื่อให้ทราบว่าไตรมาสเริ่มต้นและสิ้นสุดเมื่อใด เมื่อต้องการเรียนรู้เพิ่มเติมเกี่ยวกับตารางวันที่ ให้ดูที่ ทําความเข้าใจและสร้างตารางวันที่ใน Power Pivot ใน Excel

ฟังก์ชัน

ฟังก์ชันที่ส่งกลับวันที่เดียว

ฟังก์ชันในประเภทนี้ส่งกลับวันที่เดียว ผลลัพธ์สามารถใช้เป็นอาร์กิวเมนต์ของฟังก์ชันอื่นได้

ฟังก์ชันสองฟังก์ชันแรกในประเภทนี้จะส่งกลับวันที่แรกหรือวันสุดท้ายใน Date_Column ในบริบทปัจจุบัน การทําเช่นนี้อาจเป็นประโยชน์เมื่อคุณต้องการค้นหาวันที่แรกหรือวันสุดท้ายที่คุณมีธุรกรรมชนิดใดชนิดหนึ่ง ฟังก์ชันเหล่านี้ใช้อาร์กิวเมนต์เพียงอาร์กิวเมนต์เดียว ซึ่งเป็นชื่อของคอลัมน์วันที่ในตารางวันที่ของคุณ

ฟังก์ชันสองฟังก์ชันถัดไปในประเภทนี้จะค้นหาวันที่แรกหรือวันสุดท้าย (หรือค่าคอลัมน์อื่นๆ ด้วย) ที่นิพจน์มีค่าที่ไม่ใช่ค่าว่าง ซึ่งมักจะใช้ในสถานการณ์ เช่น สินค้าคงคลัง ที่คุณต้องการรับจํานวนสินค้าคงคลังล่าสุด และคุณไม่ทราบว่าสินค้าคงคลังล่าสุดถูกนําไปเมื่อใด

อีกหกฟังก์ชันที่ส่งกลับวันที่เดียวคือฟังก์ชันที่ส่งกลับวันที่แรกหรือวันสุดท้ายของเดือน ไตรมาส หรือปีภายในบริบทปัจจุบันของการคํานวณ

ฟังก์ชันที่ส่งกลับตารางวันที่

มีฟังก์ชันตัวแสดงเวลาสิบหกฟังก์ชันที่ส่งกลับตารางวันที่ ส่วนใหญ่แล้ว ฟังก์ชันเหล่านี้จะถูกใช้เป็นอาร์กิวเมนต์ SetFilter กับฟังก์ชัน CALCULATE เช่นเดียวกับฟังก์ชันตัวแสดงเวลาทั้งหมดใน DAX แต่ละฟังก์ชันจะใช้คอลัมน์วันที่เป็นหนึ่งในอาร์กิวเมนต์

ฟังก์ชันแปดฟังก์ชันแรกในประเภทนี้เริ่มต้นด้วยคอลัมน์วันที่ในบริบทปัจจุบัน ตัวอย่างเช่น ถ้าใช้การวัดใน PivotTable อาจมีเดือนหรือปีบนป้ายชื่อคอลัมน์หรือป้ายชื่อแถว ผลสุทธิคือคอลัมน์วันที่จะถูกกรองเพื่อรวมเฉพาะวันที่สําหรับบริบทปัจจุบัน เริ่มต้นจากบริบทปัจจุบันนั้น ฟังก์ชันแปดฟังก์ชันเหล่านี้จะคํานวณวัน เดือน ไตรมาส หรือปีก่อนหน้า แล้วส่งกลับวันที่เหล่านั้นในรูปแบบของตารางคอลัมน์เดียว ฟังก์ชัน "ก่อนหน้า" ทํางานย้อนหลังจากวันที่แรกในบริบทปัจจุบัน และฟังก์ชัน "ถัดไป" จะย้ายไปข้างหน้าจากวันที่สุดท้ายในบริบทปัจจุบัน

ฟังก์ชันสี่ฟังก์ชันถัดไปในประเภทนี้จะคล้ายกัน แต่แทนที่จะคํานวณรอบระยะเวลาก่อนหน้า (หรือถัดไป) ฟังก์ชันจะคํานวณชุดของวันที่ในรอบระยะเวลาที่เป็น "เดือนถึงวันที่" (หรือไตรมาสปัจจุบัน หรือตั้งแต่ต้นปีจนถึงปัจจุบัน หรือในช่วงเวลาเดียวกันของปีก่อนหน้า) ฟังก์ชันเหล่านี้ทั้งหมดทําการคํานวณโดยใช้วันที่ล่าสุดในบริบทปัจจุบัน โปรดทราบว่า SAMEPERIODLASTYEAR ต้องการให้บริบทปัจจุบันมีชุดของวันที่ที่ติดกัน ถ้าบริบทปัจจุบันไม่ใช่ชุดของวันที่ที่ติดกัน ฟังก์ชัน SAMEPERIODLASTYEAR จะส่งกลับข้อผิดพลาด

สี่ฟังก์ชันสุดท้ายในหมวดหมู่นี้มีความซับซ้อนมากขึ้นเล็กน้อยและมีประสิทธิภาพมากกว่าเล็กน้อย ฟังก์ชันเหล่านี้จะใช้เพื่อเลื่อนจากชุดของวันที่ที่อยู่ในบริบทปัจจุบันไปเป็นชุดวันที่ใหม่

  • DATEADD (Date_Column, Number_of_Intervals, ช่วงเวลา)

  • DATESBETWEEN (Date_Column, Start_Date, End_Date)

  • DATESINPERIOD (Date_Column, Start_Date, Number_of_Intervals, Interval)

  • PARALLELPERIOD (Date_Column, Number_of_Intervals, ช่วงเวลา)

DATESBETWEEN จะคํานวณชุดของวันที่ระหว่างวันที่เริ่มต้นและวันที่สิ้นสุดที่ระบุ ฟังก์ชันสามฟังก์ชันที่เหลือจะเลื่อนช่วงเวลาจํานวนหนึ่งจากบริบทปัจจุบัน ช่วงเวลาอาจเป็นวัน เดือน ไตรมาส หรือปี ฟังก์ชันเหล่านี้ทําให้ง่ายต่อการเลื่อนช่วงเวลาสําหรับการคํานวณตามข้อมูลต่อไปนี้

  • ย้อนกลับไปสองปี

  • ย้อนกลับหนึ่งเดือน

  • ไปข้างหน้าสามไตรมาส

  • ย้อนกลับไป 14 วัน

  • ไปข้างหน้า 28 วัน

ในแต่ละกรณี คุณจําเป็นต้องระบุเฉพาะช่วงเวลาและจํานวนของช่วงเวลาเหล่านั้นที่จะเลื่อน ช่วงเวลาที่เป็นบวกจะเคลื่อนไปข้างหน้าในเวลา ขณะที่ช่วงเวลาที่เป็นค่าลบจะย้ายกลับไปยังเวลา ช่วงจะระบุโดยคําสําคัญ DAY, MONTH, QUARTER หรือ YEAR คําสําคัญเหล่านี้ไม่ใช่สตริง ดังนั้นคําสําคัญเหล่านี้จึงไม่ควรอยู่ในเครื่องหมายอัญระบุ

ฟังก์ชันที่ประเมินนิพจน์ในช่วงเวลาหนึ่ง

ฟังก์ชันประเภทนี้ประเมินนิพจน์ตามช่วงเวลาที่ระบุ คุณสามารถทําสิ่งเดียวกันได้โดยใช้ฟังก์ชัน CALCULATE และตัวแสดงเวลาอื่นๆ ตัวอย่างเช่น

= TOTALMTD (นิพจน์, Date_Column [, SetFilter])

จะตรงกับ:

= CALCULATE (นิพจน์, DATESMTD (Date_Column)[, SetFilter])

อย่างไรก็ตาม การใช้ฟังก์ชันตัวแสดงเวลาเหล่านี้จะง่ายขึ้นเมื่อเหมาะสมกับปัญหาที่จําเป็นต้องแก้ไข:

  • TOTALMTD (นิพจน์, Date_Column [, SetFilter])

  • TOTALQTD (นิพจน์, Date_Column [, SetFilter])

  • TOTALYTD (นิพจน์, Date_Column [, SetFilter] [,YE_Date]) *

นอกจากนี้ ในประเภทนี้ยังเป็นกลุ่มฟังก์ชันที่คํานวณยอดดุลเปิดและปิดด้วย มีแนวคิดบางอย่างที่คุณควรทําความเข้าใจกับฟังก์ชันเฉพาะเหล่านี้ อันดับแรก อย่างที่คุณอาจคิดไว้อย่างชัดเจน ยอดยกมาสําหรับรอบระยะเวลาใดๆ จะเหมือนกับดุลปิดสําหรับรอบระยะเวลาก่อนหน้า ดุลปิดรวมข้อมูลทั้งหมดจนถึงสิ้นงวด ขณะที่ยอดดุลยกมาไม่มีข้อมูลใดๆ จากภายในรอบระยะเวลาปัจจุบัน

ฟังก์ชันเหล่านี้จะส่งกลับค่าของนิพจน์ที่ประเมินสําหรับจุดเวลาที่ระบุเสมอ ช่วงเวลาที่เราให้ความสําคัญคือค่าวันที่ล่าสุดที่เป็นไปได้ในระยะเวลาปฏิทิน ยอดดุลยกมาจะขึ้นอยู่กับวันที่สุดท้ายของรอบระยะเวลาก่อนหน้านี้ รอบระยะเวลาปัจจุบันจะถูกกําหนดโดยวันที่ล่าสุดในบริบทวันที่ปัจจุบันเสมอ

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

บทความ: ทําความเข้าใจและสร้างตารางวันที่ใน Power Pivot ใน Excel

การอ้างอิง: การอ้างอิงฟังก์ชัน DAXบน Office.com

ตัวอย่าง: การสร้างตัวแบบและการวิเคราะห์ข้อมูลกําไรขาดทุนด้วย Microsoft PowerPivot ใน Excel

ต้องการความช่วยเหลือเพิ่มเติมหรือไม่

ต้องการตัวเลือกเพิ่มเติมหรือไม่

สํารวจสิทธิประโยชน์ของการสมัครใช้งาน เรียกดูหลักสูตรการฝึกอบรม เรียนรู้วิธีการรักษาความปลอดภัยอุปกรณ์ของคุณ และอื่นๆ

ชุมชนช่วยให้คุณถามและตอบคําถาม ให้คําติชม และรับฟังจากผู้เชี่ยวชาญที่มีความรู้มากมาย