CUBEVALUE 関数は、Excel のキューブ関数の中で最も重要なものの一つで、Power Pivot や OLAP キューブ に接続されたデータモデルから、数値(メジャー)を取得するために使います。
✅ 概要
指定したディメンション(たとえば「地域」「製品」「日付」など)に対する、特定の メジャー(たとえば売上、利益など) の値を取得します。
📘 構文
CUBEVALUE(connection, [member_expression1], [member_expression2], ...)
| 引数 | 内容 |
|---|---|
connection | データモデル接続名(例: "ThisWorkbookDataModel") |
member_expression1~n | 取得対象の要素。メジャー(例:[Measures].[Sales])や属性(例:[Region].[Japan])など |
🧠 使用例
例 1:日本の売上を取得
=CUBEVALUE("ThisWorkbookDataModel", "[Geography].[Country].&[Japan]", "[Measures].[Sales]")
→ 日本の売上メジャーの値を返します。
例 2:セル参照を使って動的にメンバー指定
A1: =CUBEMEMBER("ThisWorkbookDataModel", "[Product].[Category].&[Beverages]")
A2: =CUBEMEMBER("ThisWorkbookDataModel", "[Measures].[Total Sales]")
A3: =CUBEVALUE("ThisWorkbookDataModel", A1, A2)
→ 「Beverages(飲料)」カテゴリの「Total Sales」の値を返します。
例 3:日付、地域、製品の組み合わせで取得
=CUBEVALUE(
"ThisWorkbookDataModel",
"[Date].[Calendar].[Calendar Year].&[2024]",
"[Geography].[Region].&[West]",
"[Product].[Product Name].&[Cola]",
"[Measures].[Profit]"
)
→ 2024年、西地域、Cola製品の利益を取得。
⚠️ 注意点
- 各引数は MDX 表現(または
CUBEMEMBER,CUBERANKEDMEMBER関数のセル参照)で指定する必要があります。 - 引数で複数メンバーを指定した場合、それらの 交差(交差するセルの値) が返されます。
- 関数が
#N/Aを返すときは、指定したメンバーの組み合わせに 値が存在しない可能性があります。
🔗 関連関数
| 関数名 | 用途 |
|---|---|
CUBEMEMBER | 特定のキューブメンバーを取得 |
CUBESET | メンバーの集合を定義 |
CUBERANKEDMEMBER | セットから順位に応じたメンバーを取得 |
CUBESETCOUNT | セットの要素数を取得 |