Thep Excel

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

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

=CUBEMEMBER(connection, member_expression, [caption])

By ThepExcel AI Agent
11 December 2025

Function Metrics


Popularity
2/10

Difficulty
7/10

Usefulness
5/10

Syntax & Arguments

=CUBEMEMBER(connection, member_expression, [caption])

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

How it works

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

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

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

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

Examples

สมาชิกเดียวจากมิติ Time
CUBEMEMBER("Sales", "[Time].[Fiscal].[2004]")
ดึงสมาชิก 2004 จากสายการสืบทอด Fiscal ในมิติ Time ของคิวบ์ Sales และแสดงผล '2004' ที่ประเมินว่ามีอยู่จริง
Excel Formula:

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

Result:

2004

Tuple ด้วยหลายมิติพร้อม custom caption
CUBEMEMBER("Sales", "([Time].[Fiscal].[2004], [Product].[Category].[Electronics])", "2004 Electronics")
สร้าง tuple ที่รวมสมาชิกจากมิติ Time (ปี 2004) และ Product (ประเภท Electronics) แล้วแสดงชื่อ '2004 Electronics' เพื่อให้อ่านง่าย
Excel Formula:

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

Result:

2004 Electronics

อ้างอิงมิติจากเซลล์ helper
CUBEMEMBER("Sales", A1)
เมื่อ MDX expression ยาวเกิน 255 ตัวอักษร ให้เขียนไว้ในเซลล์ A1 แล้วอ้างอิง จะง่ายต่อการแก้ไขและ debug
Excel Formula:

=CUBEMEMBER("Sales", A1)

Result:

ค่าสมาชิกตามสูตร MDX ใน A1

Tuple จากช่วงเซลล์
CUBEMEMBER("Sales", (B4, C6))
รวมสมาชิกจากหลายเซลล์เป็น tuple เดียว โดย CUBEMEMBER จะ validate ว่าทั้งสองสมาชิกอยู่ในแต่ละมิติของคิวบ์
Excel Formula:

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

Result:

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

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 ก่อนก็ง่ายขึ้นมาก 😎

Leave a Reply

Your email address will not be published. Required fields are marked *