Thep Excel

CUBEMEMBERดึงสมาชิกจากคิวบ์ OLAP

CUBEMEMBER ส่งกลับสมาชิกหรือ tuple จากคิวบ์ OLAP โดยใช้ MDX expression เพื่อระบุตำแหน่ง ใช้สำหรับตรวจสอบความมีตัวตนของสมาชิกและสร้าง tuple สำหรับ cube function อื่น

fx
=CUBEMEMBER(connection, member_expression, [caption])

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

อัปเดต 11 December 2025

Syntax & Arguments

อาร์กิวเมนต์ ชนิด คำอธิบาย
connection text ชื่อของการเชื่อมต่อกับคิวบ์ ปกติเป็นชื่อที่ตั้งไว้ใน Data Models หรือชื่อแหล่งข้อมูล SSAS
member_expression text/range MDX expression ที่ประเมินเป็นสมาชิกเดียว หรือ tuple ผ่านวงเล็บเหลี่ยม เช่น [Dimension].[Hierarchy].[Member] สามารถอ้างอิงเซลล์ได้
[caption]ไม่บังคับ text ข้อความที่แสดงในเซลล์แทนชื่อจริงของสมาชิก หากไม่ระบุจะแสดงชื่อของสมาชิกเอง

[ ] = อาร์กิวเมนต์ที่ไม่บังคับ

Additional Notes

CUBEMEMBER ดึงสมาชิก (member) หรือชุดของสมาชิก (tuple) จากคิวบ์ OLAP โดยใช้ MDX expression ที่ให้ตำแหน่งที่ชัดเจน วิธีการนี้เหมือนการให้ที่อยู่ GPS ไปยังสมาชิกที่ต้องการในสเปซหลายมิติของคิวบ์ ฟังก์ชันจะตรวจสอบความถูกต้องของ expression ก่อนส่งกลับผลลัพธ์

ที่เจ๋งคือ CUBEMEMBER validate ว่าสมาชิกจริง ๆ มีอยู่ในคิวบ์หรือไม่ และช่วยหลีกเลี่ยง #N/A error จากฟังก์ชัน cube อื่น โดยการตรวจสอบ tuple ก่อนส่งเข้า ทำให้การสร้างแดชบอร์ด OLAP ที่มีความเสี่ยงจากข้อมูลไม่ครบถ้วนนั้นปลอดภัยขึ้น

ส่วนตัวผมใช้ CUBEMEMBER เมื่อต้องสร้าง dynamic dashboard ที่เชื่อมต่อกับ Excel Data Models หรือ SSAS cubes ผมเคยติดปัญหากับ tuple ที่ซับซ้อน แต่หลังจากใช้ CUBEMEMBER เพื่อ validate ก่อนก็ง่ายขึ้นมาก 😎

How it works

ตรวจสอบสมาชิกในมิติเวลา

ใช้ CUBEMEMBER เพื่อตรวจสอบว่าปี 2004 มีอยู่ในมิติ Fiscal Time ของคิูบหรือไม่

สร้าง tuple จากสมาชิกหลายตัว

ใช้ CUBEMEMBER เพื่อสร้าง tuple จากสมาชิกที่อยู่ในเซลล์ต่าง ๆ เช่น สมาชิกจากมิติ Time Product และ Store

Examples

สมาชิกเดียวจากมิติ TimeCUBEMEMBER("Sales", "[Time].[Fiscal].[2004]")

ดึงสมาชิก 2004 จากสายการสืบทอด Fiscal ในมิติ Time ของคิวบ์ Sales และแสดงผล '2004' ที่ประเมินว่ามีอยู่จริง

fx
=CUBEMEMBER("Sales", "[Time].[Fiscal].[2004]")

ผลลัพธ์2004
Tuple ด้วยหลายมิติพร้อม custom captionCUBEMEMBER("Sales", "([Time].[Fiscal].[2004], [Product].[Category].[Electronics])", "2004 Electronics")

สร้าง tuple ที่รวมสมาชิกจากมิติ Time (ปี 2004) และ Product (ประเภท Electronics) แล้วแสดงชื่อ '2004 Electronics' เพื่อให้อ่านง่าย

fx
=CUBEMEMBER("Sales", "([Time].[Fiscal].[2004], [Product].[Category].[Electronics])", "2004 Electronics")

ผลลัพธ์2004 Electronics
อ้างอิงมิติจากเซลล์ helperCUBEMEMBER("Sales", A1)

เมื่อ MDX expression ยาวเกิน 255 ตัวอักษร ให้เขียนไว้ในเซลล์ A1 แล้วอ้างอิง จะง่ายต่อการแก้ไขและ debug

fx
=CUBEMEMBER("Sales", A1)

ผลลัพธ์ค่าสมาชิกตามสูตร MDX ใน A1
Tuple จากช่วงเซลล์CUBEMEMBER("Sales", (B4, C6))

รวมสมาชิกจากหลายเซลล์เป็น tuple เดียว โดย CUBEMEMBER จะ validate ว่าทั้งสองสมาชิกอยู่ในแต่ละมิติของคิวบ์

fx
=CUBEMEMBER("Sales", (B4, C6))

ผลลัพธ์Tuple ของสมาชิกจาก B4 และ C6

FAQs

MDX expression คืออะไร เขียนยังไง?+

MDX (Multidimensional Expressions) เป็นภาษาของระบบ OLAP เหมือน SQL สำหรับ cubes ครับ ผมคิดว่าเขียนแบบ [Dimension].[Hierarchy].[Member] เช่น [Time].[Fiscal].[2004] หรือ [Geography].[Country].[Thailand] วงเล็บเหลี่ยมเป็นสิ่งที่ห้ามลืม ส่วน tuple คือรวมหลายสมาชิก เช่น ([Time].[2004], [Product].[Electronics]) อันนี้ผมเห็นหลายคนลืมวงเล็บนอก

CUBEMEMBER แตกต่างจาก CUBEVALUE อย่างไร?+

ผมเห็นประเด็นนี้ชัด ๆ ครับ CUBEMEMBER ส่งกลับสมาชิกหรือ tuple เพื่อเช็คว่าหาได้ไหม ส่วน CUBEVALUE ส่งกลับค่าตัวเลขจริง ๆ จากคิวบ์ ผมใช้ CUBEMEMBER ก่อนเสมอเพื่อ validate tuple ก่อนส่งไป CUBEVALUE จะได้ค่าถูกต้องและไม่ได้ #N/A ตั้งแต่เริ่ม

Tuple คืออะไร ต้องใช้บ้าง?+

Tuple คือชุดของสมาชิก หนึ่งตัวจากแต่ละมิติ ใช้ระบุตำแหน่งเฉพาะในคิวบ์หลายมิติ เช่น ([Time].[2004], [Product].[Sales], [Location].[Bangkok]) ก็คือจุดตัดระหว่างปี 2004 ประเภท Sales และเมืองกรุงเทพ ผมใช้ tuple เมื่อต้องเอา aggregate value จากเซลล์เดียว ไม่ใช่ช่วง

ถ้า MDX expression เขียนผิด จะเกิดอะไร?+

จะได้ #N/A error ครับ ผมเห็นเรื่องนี้บ่อยตอนเขียน MDX ต้องเช็ค (1) วงเล็บเหลี่ยมครบไหม (2) ชื่อ dimension hierarchy member ถูกไหม (3) tuple มี element จากแต่ละมิติไหม ถ้าเกิน 255 ตัวอักษรก็เก็บไว้ในเซลล์ใช่ ไม่ใช่ยัดเข้าสูตรโดยตรง

Resources & Related

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

ฟังก์ชันนี้CUBEMEMBERCube
Cube (6)
CUBEKPIMEMBER

CUBEKPIMEMBER ดึงข้อมูลตัวบ่งชี้ KPI จากคิวบ์ OLAP และส่งกลับค่าจริง เป้าหมาย สถานะ หรือแนวโน้ม ใช้เชื่อมต่อกับ SQL Server Analysis Services เพื่อวิเคราะห์ผลการดำเนินงานองค์กร

CUBEMEMBERPROPERTY

CUBEMEMBERPROPERTY ดึงค่าของคุณสมบัติสมาชิก (property) จากสมาชิกในคิูบ OLAP โดยต้องระบุชื่อการเชื่อมต่อ MDX expression และชื่อคุณสมบัติที่ต้องการเข้าถึง

CUBERANKEDMEMBER

CUBERANKEDMEMBER ส่งกลับสมาชิกที่อยู่ในตำแหน่งอันดับที่ระบุจากชุด ใช้หาข้อมูลอันดับ 1, 2, 3 หรืออื่น ๆ จากคิวบ์

CUBESET

CUBESET ส่งชุด MDX expression ไปยังเซิร์ฟเวอร์คิูบ แล้วส่งชุดข้อมูลกลับมาใช้กับฟังก์ชัน CUBE อื่นๆ เหมาะสำหรับงานวิเคราะห์ข้อมูล OLAP

CUBESETCOUNT

CUBESETCOUNT นับจำนวนรายการในชุดที่สร้างจาก CUBESET ฟังก์ชันนี้ใช้ประกอบกับการทำงานของ OLAP เพื่อนับสมาชิกในชุดข้อมูล

CUBEVALUE

CUBEVALUE ดึงค่าที่รวม (aggregated value) จากคิูบ OLAP ผ่านการเชื่อมต่อ Power Pivot ใช้กำหนดมิติและสมาชิกเพื่อได้ยอดขาย กำไร หรือตัวชี้วัดอื่นจากคิูบ

Comments

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