Posted in

Excel 関数:CUBEMEMBER

CUBEMEMBER 関数は、OLAP キューブPower Pivot データモデルからメンバー(値の一部)を取得するための Excel のキューブ関数です。これは、ピボットテーブルと似たような使い方を数式ベースでできるようにする強力な関数です。


🔍 構文

CUBEMEMBER(connection, member_expression, )

📌 引数の説明

引数説明
connectionキューブへの接続名。例: "ThisWorkbookDataModel"(Power Pivot のデータモデル)など。
member_expressionメンバーまたはタプル(複数次元の組み合わせ)を表す MDX 式(多次元式言語)。例: [Product].[Category].[Bikes]
caption (省略可能)セルに表示する名前(見た目上の名前)。指定しなければ、キューブから取得した表示名が使われます。

✅ 基本的な例

=CUBEMEMBER("ThisWorkbookDataModel", "[Product].[Category].[Bikes]")

この関数は、Power Pivot モデル内の「Product」ディメンションの「Category」階層の中から「Bikes」カテゴリのメンバーを返します。


🧩 応用例(タプル)

=CUBEMEMBER("ThisWorkbookDataModel", "([Date].[Calendar].[2025], [Product].[Category].[Bikes])")

このように 複数のメンバーを組み合わせた「タプル」 を指定することもできます。これは、2025年の「Bikes」カテゴリを指定している例です。


📎 CUBEVALUE と組み合わせる

CUBEMEMBER 関数で取得したメンバーを、CUBEVALUE 関数に使うのが典型的なパターンです。

=CUBEVALUE("ThisWorkbookDataModel", 
           CUBEMEMBER("ThisWorkbookDataModel", "[Date].[Calendar].[2025]"),
           CUBEMEMBER("ThisWorkbookDataModel", "[Product].[Category].[Bikes]"))

これは、2025年の「Bikes」カテゴリの売上やメジャーを返すような式です(どのメジャーを使うかはモデル次第)。


🧠 補足

  • #N/A エラーが出た場合は、指定したメンバーが見つからないか、接続が正しくない可能性があります。
  • モデルに日本語ラベルが使われている場合でも、内部名(英語のテーブル名など) を使う必要があります。
  • モデルやピボットテーブルで名前を確認した上で、構文を合わせましょう。

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です