คำอธิบาย
ฟังก์ชันนี้ใช้สำหรับดึงข้อมูลที่ถูกสรุป (aggregated value) จากคิวบ์ ข้อมูลที่ได้ออกมาจะเป็นผลรวมของชิ้นข้อมูลเช่นการขาย กำไร หรือจำนวนอื่นๆ ที่มีอยู่ใน OLAP database ถ้าเปรียบเหมือนกับห้องเก็บของ มีตู้ใหญ่ๆ ที่ไว้เก็บสิ่งของ ฟังก์ชันนี้เป็นเหมือนกุญแจที่ช่วยดึงสิ่งของจากตู้นั้นออกมาให้เรา!
มีครั้งแรกในเวอร์ชันไหน
2007
รูปแบบคำสั่ง (Syntax)
CUBEVALUE(connection, [member_expression1], [member_expression2], ...)
Arguments
-
connection (Required – string)
A text string of the name of the connection to the cube. ชื่อการเชื่อมต่อกับคิวบ์ เป็นข้อความที่ระบุชื่อการเชื่อมต่อให้เข้าถึงคิวบ์ข้อมูลได้ -
member_expression (Optional – string)
Optional. A text string of a multidimensional expression (MDX) that evaluates to a member or tuple within the cube. ข้อความที่ใช้ MDX ในการระบุตำแหน่งข้อมูลในคิวบ์
ตัวอย่างการใช้งาน (Examples)
-
Formula:
Description: ดึงยอดขายรวมของสินค้าชนิด A ในไตรมาสแรกของปี 2023 จากแหล่งข้อมูล "SalesData"=CUBEVALUE("SalesData", "[Products].[Product Name].&[ProductA]", "[Time].[2023].[Quarter1]")
Result:ยอดขายรวมของสินค้าชนิด A ในไตรมาสแรกของปี 2023 -
Formula:
Description: ดึงยอดขายรวมของเดือนมกราคม 2023 จากแหล่งข้อมูล "SalesData"=CUBEVALUE("SalesData", "[Time].[2023].[January]", "[Measures].[Total Sales]")
Result:ยอดขายรวมของเดือนมกราคม 2023 -
Formula:
Description: เปรียบเทียบอัตราส่วนการขายระหว่างภูมิภาค West และ East โดยใช้ฟังก์ชัน CUBEVALUE แยกจากกัน=CUBEVALUE("SalesData", "[Region].[West]", "[Measures].[Total Sales]") / CUBEVALUE("SalesData", "[Region].[East]", "[Measures].[Total Sales]")
Result:อัตราส่วนการขายระหว่างภูมิภาค West และ East -
Formula:
Description: เปรียบเทียบยอดขายระหว่างสินค้าชนิด A และ B ในไตรมาสแรกของปี 2023 โดยการหักลบยอดขาย=CUBEVALUE("SalesData", "[Products].[Product Name].&[ProductA]", "[Time].[2023].[Quarter1]") - CUBEVALUE("SalesData", "[Products].[Product Name].&[ProductB]", "[Time].[2023].[Quarter1]")
Result:ผลต่างยอดขายระหว่างสินค้าชนิด A และ B ในไตรมาสแรกของปี 2023นน่่ -
Formula:
Description: ใช้เงื่อนไข IF และ ISTEXT เพื่อตรวจสอบข้อความ แล้วแทนค่าด้วย 0 หากเจอข้อความว่างในผลลัพธ์ของ CUBEVALUE=IF(ISTEXT(A1),0,A1)+IF(ISTEXT(A2),0,A2)+IF(ISTEXT(A3),0,A3)
Result:รวมค่าจากเซลล์ A1, A2 และ A3 โดยแทนที่ข้อความว่างด้วย 0
Tips & Tricks
ใส่ชื่อการเชื่อมต่อและข้อความการระบุลงในเซลล์แล้วใช้ในฟังก์ชัน CUBEVALUE เพื่อให้การแก้ไขทำได้ง่ายขึ้น หากมี Null ในผลลัพธ์ ใช้ฟังก์ชัน IF ร่วมกับ ISTEXT เพื่อแทนที่ด้วย 0 จำไว้ว่าวางค่านิยมในเงื่อนไขเสมอ!
ข้อควรระวัง (Cautions)
ระวังข้อความว่าง (zero-length strings) ที่เกิดจากค่า Null ในฐานข้อมูลซึ่งอาจก่อให้เกิดข้อผิดพลาด #VALUE! ได้ ให้ลองใช้ ISTEXT และ IF เพื่อป้องกัน
ฟังก์ชันที่เกี่ยวข้อง
ข้อดี / ข้อจำกัด
CUBEVALUE เป็นเครื่องมือที่ยอดเยี่ยมสำหรับการดึงข้อมูลเชิงสรุปจาก OLAP คิวบ์ แต่การตั้งค่าคอนเน็กชันก็อาจทำให้ผู้ใช้งานใหม่งงได้บ้าง และควรระวังความผิดพลาดจากค่า Null ที่กลายเป็นข้อความว่าง
References
- Microsoft Support Documentation
- TheBricks Cubevalue Guide
- Accelerate Excel Cube Formulas
- Excel Campus on CUBEVALUE
ขอบคุณที่เข้ามาอ่านนะครับ ❤️
Leave a Reply