Data Analysis Expressions (DAX) มีฟังก์ชัน 35 ฟังก์ชันโดยเฉพาะเพื่อการรวมและเปรียบเทียบข้อมูลเมื่อเวลาผ่านไป ต่างจากฟังก์ชันวันที่และเวลาของ DAX ฟังก์ชันตัวแสดงเวลาไม่มีสิ่งใดที่คล้ายกันในExcelของคุณ ทั้งนี้เป็นเพราะฟังก์ชันตัวแสดงเวลาจะใช้งานร่วมกับข้อมูลที่เปลี่ยนแปลงอยู่ตลอดเวลา ขึ้นอยู่กับบริบทที่คุณเลือกใน PivotTables Power Viewด้วยภาพ
เมื่อต้องการใช้งานฟังก์ชันตัวแสดงเวลา คุณต้องมีตารางวันที่รวมอยู่ในตัวแบบข้อมูลของคุณ ตารางวันที่ต้องมีคอลัมน์ที่มีหนึ่งแถวทุกวันของทุกปีที่รวมอยู่ในข้อมูลของคุณ คอลัมน์นี้จะถือว่าเป็นคอลัมน์ วันที่ (แม้ว่าจะสามารถตั้งชื่อสิ่งที่คุณต้องการได้) ฟังก์ชันตัวแสดงเวลาหลายฟังก์ชันต้องการคอลัมน์วันที่เพื่อคํานวณตามวันที่ที่คุณเลือกเป็นเขตข้อมูลในรายงาน ตัวอย่างเช่น ถ้าคุณมีการวัดที่คํานวณยอดดุลไตรมาสปิดโดยใช้ฟังก์ชัน CLOSINGBALANCEQTR เพื่อให้ Power Pivot ทราบเมื่อสิ้นไตรมาสเป็นจริง จะต้องอ้างอิงคอลัมน์วันที่ในตารางวันที่เพื่อให้ทราบว่าไตรมาสเริ่มต้นและสิ้นสุดเมื่อใด เมื่อต้องการเรียนรู้เพิ่มเติมเกี่ยวกับตารางวันที่ ให้ดูที่ เข้าใจและสร้างตารางวันที่ใน Power Pivot Excel
ฟังก์ชัน
ฟังก์ชันที่ส่งกลับวันที่เดียว
ฟังก์ชันในประเภทนี้ส่งกลับวันที่เดียว จากนั้นสามารถใช้ผลลัพธ์เป็นอาร์กิวเมนต์ของฟังก์ชันอื่นได้
ฟังก์ชันสองฟังก์ชันแรกในประเภทนี้จะส่งกลับวันที่แรกหรือวันที่สุดท้ายDate_Columnในบริบทปัจจุบัน ซึ่งจะเป็นประโยชน์เมื่อคุณต้องการค้นหาวันที่แรกหรือวันสุดท้ายที่คุณทรานแซคชันชนิดใดประเภทหนึ่ง ฟังก์ชันเหล่านี้ใช้อาร์กิวเมนต์เพียงรายการเดียว คือชื่อของคอลัมน์วันที่ในตารางวันที่ของคุณ
สองฟังก์ชันถัดไปในประเภทนี้จะค้นหาวันที่แรกหรือวันที่สุดท้าย (หรือค่าคอลัมน์อื่นๆ เช่นกัน) ที่นิพจน์มีค่าที่ไม่ใช่ค่าว่าง สิ่งนี้มักจะใช้ในสถานการณ์ต่างๆ เช่น สินค้าคงคลัง ที่คุณต้องการดูจํานวนสินค้าคงคลังล่าสุด และคุณจะไม่ทราบว่าใช้สินค้าคงคลังรายการสุดท้ายเมื่อใด
-
FIRSTNONBLANK (Date_Column, นิพจน์)
-
LASTNONBLANK (Date_Column, นิพจน์)
ฟังก์ชันอีกหกฟังก์ชันที่ส่งกลับวันที่เดียวคือฟังก์ชันที่ส่งกลับวันที่แรกหรือวันสุดท้ายของเดือน ไตรมาส หรือปีภายในบริบทปัจจุบันของการคํานวณ
-
STARTOFMONTH (Date_Column)
-
STARTOFQUARTER (Date_Column)
-
STARTOFYEAR (Date_Column [,YE_Date])
-
ENDOFMONTH (Date_Column)
-
ENDOFQUARTER (Date_Column)
-
ENDOFYEAR (Date_Column [,YE_Date])
ฟังก์ชันที่ส่งกลับตารางของวันที่
มีฟังก์ชันตัวแสดงเวลาสิบหกฟังก์ชันที่ส่งกลับตารางของวันที่ ส่วนใหญ่แล้ว ฟังก์ชันเหล่านี้จะถูกใช้เป็นอาร์กิวเมนต์ SetFilter กับฟังก์ชันCALCULATE เช่นเดียวกับฟังก์ชันตัวแสดงเวลาทั้งหมดใน DAX แต่ละฟังก์ชันใช้คอลัมน์วันที่เป็นหนึ่งในอาร์กิวเมนต์
ฟังก์ชันแปดฟังก์ชันแรกในประเภทนี้เริ่มต้นด้วยคอลัมน์วันที่ในบริบทปัจจุบัน ตัวอย่างเช่น ถ้าใช้การวัดใน PivotTable อาจมีเดือนหรือปีบนป้ายชื่อคอลัมน์หรือป้ายชื่อแถว ผลสุทธิคือคอลัมน์วันที่จะถูกกรองเพื่อรวมเฉพาะวันที่ของบริบทปัจจุบัน เริ่มต้นจากบริบทปัจจุบัน นั้น ฟังก์ชันแปดฟังก์ชันนี้จะคํานวณวัน เดือน ไตรมาส หรือปีก่อนหน้า แล้วส่งกลับวันที่เหล่านั้นในรูปแบบตารางคอลัมน์เดียว ฟังก์ชัน "ก่อนหน้า" จะย้อนกลับจากวันที่แรกในบริบทปัจจุบัน และฟังก์ชัน "ถัดไป" ย้ายไปข้างหน้าจากวันที่สุดท้ายในบริบทปัจจุบัน
-
PREVIOUSDAY (Date_Column)
-
PREVIOUSMONTH (Date_Column)
-
PREVIOUSQUARTER (Date_Column)
-
PREVIOUSYEAR (Date_Column [,YE_Date])
-
NEXTDAY (Date_Column)
-
NEXTMONTH (Date_Column)
-
NEXTQUARTER (Date_Column)
-
NEXTYEAR (Date_Column [,YE_Date])
สี่ฟังก์ชันถัดไปในประเภทนี้คล้ายกัน แต่แทนที่จะคํานวณคาบเวลาก่อนหน้า (หรือถัดไป) ฟังก์ชันจะคํานวณชุดของวันที่ในคาบเวลาที่มี "เดือนถึงวันที่" (หรือไตรมาสถึงวันที่ หรือปีถึงปัจจุบัน หรือในช่วงเดียวกันของปีก่อนหน้า) ฟังก์ชันเหล่านี้จะคํานวณโดยใช้วันที่ล่าสุดในบริบทปัจจุบัน โปรดทราบว่า SAMEPERIODLASTYEAR ต้องการให้บริบทปัจจุบันประกอบด้วยชุดของวันที่ที่ต่อเนื่องกัน ถ้าบริบทปัจจุบันไม่ใช่ชุดของวันที่ที่อยู่ติดกัน SAMEPERIODLASTYEAR จะส่งกลับข้อผิดพลาด
-
DATESMTD (Date_Column)
-
DATESQTD (Date_Column)
-
DATESYTD (Date_Column [,YE_Date])
-
SAMEPERIODLASTYEAR (Date_Column)
สี่ฟังก์ชันสุดท้ายในประเภทนี้ซับซ้อนขึ้นเล็กน้อยและยังมีประสิทธิภาพมากขึ้นอีกด้วย ฟังก์ชันเหล่านี้จะใช้เพื่อเลื่อนจากชุดของวันที่ในบริบทปัจจุบันเป็นชุดของวันที่ใหม่
-
DATEADD (Date_Column, Number_of_Intervals, ช่วงเวลา)
-
DATESBETWEEN (Date_Column, Start_Date, End_Date)
-
DATESINPERIOD (Date_Column, Start_Date, Number_of_Intervals, ช่วง)
-
PARALLELPERIOD (Date_Column, Number_of_Intervalsระยะห่าง)
DATESBETWEEN จะคํานวณชุดของวันที่ระหว่างวันที่เริ่มต้นและวันที่สิ้นสุดที่ระบุ ที่เหลือสามฟังก์ชันจะเลื่อนจํานวนช่วงเวลาจากบริบทปัจจุบัน ช่วงอาจเป็นวัน เดือน ไตรมาส หรือปี ฟังก์ชันเหล่านี้ช่วยให้การเลื่อนช่วงเวลาของการคํานวณเป็นเรื่องง่ายด้วยสิ่งต่อไปนี้
-
ย้อนกลับไปสองปี
-
ย้อนกลับไปหนึ่งเดือน
-
ไปข้างหน้าสามไตรมาส
-
ย้อนกลับไป 14 วัน
-
ไปข้างหน้า 28 วัน
ในแต่ละกรณี คุณเพียงต้องระบุช่วงและระยะเวลาที่จะเลื่อน ช่วงเวลาบวกจะเลื่อนไปข้างหน้า ในขณะที่ช่วงเวลาติดลบจะย้ายกลับไปยังเวลา ช่วงจะถูกระบุด้วยคีย์เวิร์ดของ DAY, MONTH, QUARTER หรือ YEAR คําหลักเหล่านี้ไม่ใช่สตริง ดังนั้นไม่ควรอยู่ในเครื่องหมายอัญประกาศ
ฟังก์ชันที่ประเมินนิพจน์ในช่วงเวลาหนึ่ง
ฟังก์ชันประเภทนี้ประเมินนิพจน์ในช่วงเวลาที่ระบุ คุณสามารถทํางานได้แบบเดียวกันโดยใช้ฟังก์ชันการคํานวณและตัวแสดงเวลาอื่นๆ ตัวอย่างเช่น
= TOTALMTD (นิพจน์, Date_Column [, SetFilter])
เหมือนกับ:
= CALCULATE (นิพจน์, DATESMTD (Date_Column)[, SetFilter])
อย่างไรก็ตาม การใช้ฟังก์ชันตัวแสดงเวลาเหล่านี้จะง่ายขึ้น เมื่อเหมาะกับปัญหาที่ต้องแก้ไข:
-
TOTALMTD (นิพจน์, Date_Column [, SetFilter])
-
TOTALQTD (นิพจน์, Date_Column [, SetFilter])
-
TOTALYTD (นิพจน์, Date_Column [, SetFilter] [,YE_Date]) *
นอกจากนี้ ในประเภทนี้คือกลุ่มของฟังก์ชันที่คํานวณยอดดุลเปิดและปิด มีแนวคิดบางอย่างที่คุณควรเข้าใจด้วยฟังก์ชันเฉพาะเหล่านี้ ก่อนอื่น คุณอาจคิดออกว่า ยอดดุลเปิดของช่วงเวลาต่างๆ จะเหมือนกับยอดดุลปิดของช่วงเวลาก่อนหน้า ยอดดุลปิดจะรวมข้อมูลทั้งหมดจนถึงจุดสิ้นสุดของช่วงเวลา ในขณะที่ยอดดุลเปิดจะไม่รวมข้อมูลใดๆ จากภายในช่วงเวลาปัจจุบัน
ฟังก์ชันเหล่านี้จะส่งกลับค่าของนิพจน์ที่ประเมินตามช่วงเวลาที่ระบุเสมอ จุดในเวลาที่เราสนใจจะเป็นค่าวันที่ล่าสุดที่เป็นไปได้ในระยะเวลาปฏิทินเสมอ ยอดดุลที่เปิดขึ้นจะยึดตามวันที่สุดท้ายของคาบเวลาก่อนหน้า ในขณะที่ยอดดุลปิดจะยึดตามวันที่สุดท้ายในคาบเวลาปัจจุบัน ช่วงเวลาปัจจุบันจะถูกกําหนดโดยวันที่ล่าสุดในบริบทวันที่ปัจจุบันเสมอ
-
OPENINGBALANCEMONTH (นิพจน์, Date_Column [,SetFilter])
-
OPENINGBALANCEQUARTER Quarter (นิพจน์, Date_Column [,SetFilter])
-
OPENINGBALANCEYEAR (นิพจน์, Date_Column [,SetFilter] [,YE_Date])
-
CLOSINGBALANCEMONTH (นิพจน์, Date_Column [,SetFilter])
-
CLOSINGBALANCEQUARTER (นิพจน์, Date_Column [,SetFilter])
-
CLOSINGBALANCEYEAR (นิพจน์, Date_Column [,SetFilter] [,YE_Date])
แหล่งข้อมูลเพิ่มเติม
บทความ:เข้าใจและสร้างตารางวันที่ใน Power Pivot Excel
การอ้างอิง:การอ้างอิงฟังก์ชัน DAXบน Office.com
ตัวอย่าง:การสร้างตัวแบบและการวิเคราะห์ข้อมูลกําไรและการสูญเสียกับ microsoft PowerPivotในExcel