CUBEVALUE (ฟังก์ชัน CUBEVALUE)

บทความนี้จะอธิบายเกี่ยวกับไวยากรณ์ของสูตรและการใช้ฟังก์ชัน CUBEVALUE ใน Microsoft Excel

คำอธิบาย

ส่งกลับค่าการรวมจากคิวบ์

ไวยากรณ์

CUBEVALUE(connection, [member_expression1], [member_expression2], …)

ไวยากรณ์ของฟังก์ชัน CUBEVALUE มีอาร์กิวเมนต์ดังต่อไปนี้

  • connection    (ต้องระบุ) สตริงข้อความของชื่อของการเชื่อมต่อไปยังคิวบ์

  • member_expression    (ระบุหรือไม่ก็ได้) สตริงข้อความของนิพจน์หลายมิติ (MDX) ที่ประเมินเป็นสมาชิกหรือทูเปิลในคิวบ์ อีกแง่หนึ่ง member_expression อาจเป็นชุดที่กำหนดด้วยฟังก์ชัน CUBESET ก็ได้ ใช้ member_expression เป็นตัวแบ่งส่วนข้อมูลเพื่อกำหนดส่วนของคิวบ์สำหรับส่งกลับค่าการรวม ถ้าไม่ได้ระบุการวัดใน member_expression จะใช้การวัดเริ่มต้นสำหรับคิวบ์นั้น

ข้อสังเกต

  • เมื่อฟังก์ชัน CUBEVALUE ประเมินค่า ฟังก์ชันจะแสดงข้อความ "#GETTING_DATA…" ในเซลล์ชั่วคราวก่อนที่จะได้รับข้อมูลทั้งหมด

  • ถ้าใช้การอ้างอิงเซลล์สำหรับ member_expression และการอ้างอิงเซลล์นั้นมีฟังก์ชัน CUBE อยู่ member_expression จะใช้นิพจน์ MDX สำหรับรายการในเซลล์ที่อ้างอิง ไม่ใช่ค่าที่แสดงในเซลล์ที่อ้างอิงนั้น

  • ถ้าชื่อการเชื่อมต่อไม่ใช่การเชื่อมต่อสมุดงานที่ถูกต้องที่ถูกจัดเก็บไว้ในสมุดงาน CUBEVALUE จะส่งกลับ #NAME? เป็นค่าความผิดพลาด ถ้าเซิร์ฟเวอร์ Online Analytical Processing (OLAP) ไม่ได้ทำงานอยู่ ไม่พร้อมใช้งาน หรือส่งกลับข้อความแสดงข้อผิดพลาด CUBEVALUE จะส่งกลับ #NAME? เป็นค่าความผิดพลาด

  • ถ้ามีองค์ประกอบใดเพียงหนึ่งองค์ประกอบภายในทูเปิลไม่ถูกต้อง CUBEVALUE จะส่งกลับ #VALUE! เป็นค่าความผิดพลาด

  • CUBEVALUE จะส่งกลับค่าความผิดพลาด #N/A ในกรณีดังนี้

    • ไวยากรณ์ member_expression ไม่ถูกต้อง

    • สมาชิกที่ระบุโดย member_expression ไม่มีอยู่ในคิวบ์

    • ทูเปิลไม่ถูกต้องเพราะไม่มีอินเตอร์เซกชันสำหรับค่าที่ระบุ (ซึ่งอาจเกิดขึ้นกับหลายองค์ประกอบจากลำดับชั้นเดียวกัน)

    • ชุดมีสมาชิกอย่างน้อยหนึ่งสมาชิกที่มีมิติแตกต่างจากสมาชิกอื่น

    • CUBEVALUE อาจส่งกลับค่าความผิดพลาด #N/A ถ้าคุณอ้างอิงวัตถุที่ยึดตามเซสชัน เช่น สมาชิกจากการคำนวณหรือชุดที่มีชื่อใน PivotTable เมื่อใช้การเชื่อมต่อร่วมกัน และ PivotTable นั้นถูกลบหรือคุณแปลง PivotTable นั้นเป็นสูตร (บนแท็บ ตัวเลือก ในกลุ่ม เครื่องมือ คลิก เครื่องมือ OLAP แล้วคลิก แปลงเป็นสูตร)

ปัญหา: ค่า Null จะถูกแปลงเป็นสตริงที่มีความยาวเป็นศูนย์

ใน Excel ถ้าเซลล์ไม่มีข้อมูลเพราะคุณไม่เคยเปลี่ยนแปลงเซลล์หรือคุณได้ลบเนื้อหา เซลล์จะมีค่าว่าง ในระบบฐานข้อมูลหลายระบบ ค่าว่างจะเรียกว่าค่า Null ค่าว่างหรือค่า Null มีความหมายตามตัวอักษรว่า "ไม่มีค่า" อย่างไรก็ตามสูตรจะไม่มีทางส่งกลับเป็นสตริงว่างหรือค่า Null สูตรจะส่งกลับค่าใดค่าหนึ่งในสามค่านี้เสมอ คือ ค่าตัวเลข ค่าข้อความ ซึ่งอาจเป็นสตริงที่มีความยาวเป็นศูนย์ หรือค่าความผิดพลาด เช่น #NUM! หรือ #VALUE

ถ้าสูตรมีฟังก์ชัน CUBEVALUE ที่เชื่อมต่อกับฐานข้อมูล Online Analytical Processing (OLAP) และแบบสอบถามไปยังฐานข้อมูลนี้ให้ผลลัพธ์เป็นค่า Null แล้ว Excel จะแปลงค่า Null เป็นสตริงที่มีความยาวเป็นศูนย์ แม้ว่าสูตรจะส่งกลับค่าตัวเลข ซึ่งอาจทำให้เกิดกรณีที่ช่วงของเซลล์มีการรวมกันของค่าตัวเลขและค่าสตริงที่มีความยาวเป็นศูนย์ และกรณีนี้อาจมีผลต่อผลลัพธ์ของสูตรอื่นที่อ้างอิงช่วงของเซลล์นั้น เช่น ถ้า A1 และ A3 มีตัวเลข และ A2 มีสูตรที่มีฟังก์ชัน CUBEVALUE ที่ส่งกลับสตริงที่มีความยาวเป็นศูนย์ สูตรต่อไปนี้จะส่งกลับ #VALUE! เป็นข้อผิดพลาด:

=A1+A2+A3

เมื่อต้องการป้องกันสิ่งนี้ คุณสามารถทดสอบสตริงที่มีความยาวเป็นศูนย์ได้โดยใช้ฟังก์ชัน ISTEXT และโดยใช้ฟังก์ชัน IF เพื่อแทนที่ความยาวที่เป็นศูนย์ด้วย 0 (ศูนย์) ดังที่ตัวอย่างต่อไปนี้แสดง

=IF(ISTEXT(A1),0,A1)+IF(ISTEXT(A2),0,A2)+IF(ISTEXT(A3),0,A3)

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

=IF (CUBEVALUE("Sales","[Measures].[Profit]","[Time].[2004]","[All Product].[Beverages]")="", 0, CUBEVALUE("Sales","[Measures].[Profit]","[Time].[2004]","[All Product].[Beverages]"))

โปรดสังเกตว่าฟังก์ชัน SUM ไม่ต้องการการทดสอบนี้สำหรับสตริงที่มีความยาวเป็นศูนย์ เนื่องจากฟังก์ชันจะละเว้นสตริงที่มีความยาวเป็นศูนย์โดยอัตโนมัติเมื่อคำนวณค่าส่งกลับของฟังก์ชัน

ตัวอย่าง

=CUBEVALUE("Sales","[Measures].[Profit]","[Time].[2004]","[All Product].[Beverages]")

=CUBEVALUE($A$1,"[Measures].[Profit]",D$12,$A23)

=CUBEVALUE("Sales",$B$7,D$12,$A23)

ขยายทักษะของคุณ
สำรวจการฝึกอบรม
รับฟีเจอร์ใหม่ก่อนใคร
เข้าร่วม Office Insider

ข้อมูลนี้เป็นประโยชน์หรือไม่

ขอบคุณสำหรับคำติชมของคุณ!

ขอขอบคุณสำหรับคำติชมของคุณ! เราคิดว่าอาจเป็นประโยชน์ที่จะให้คุณได้ติดต่อกับหนึ่งในตัวแทนฝ่ายสนับสนุน Office ของเรา

×