Applies ToExcel for Microsoft 365 Excel for Microsoft 365 for Mac Excel สำหรับเว็บ Excel 2024 Excel 2024 for Mac Excel 2021 Excel 2021 for Mac Excel 2019 Excel 2019 for Mac Excel 2016 Excel for iPad Excel Web App Excel for iPhone Excel สำหรับแท็บเล็ต Android Excel สำหรับโทรศัพท์ Android

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

คำอธิบาย

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

ไวยากรณ์

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

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

  • การเชื่อมต่อ    จำเป็น สตริงข้อความของชื่อการเชื่อมต่อกับคิวบ์

  • 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)

ต้องการความช่วยเหลือเพิ่มเติมหรือไม่

ต้องการตัวเลือกเพิ่มเติมหรือไม่

สํารวจสิทธิประโยชน์ของการสมัครใช้งาน เรียกดูหลักสูตรการฝึกอบรม เรียนรู้วิธีการรักษาความปลอดภัยอุปกรณ์ของคุณ และอื่นๆ

ชุมชนช่วยให้คุณถามและตอบคําถาม ให้คําติชม และรับฟังจากผู้เชี่ยวชาญที่มีความรู้มากมาย