Posted in

Excel 関数:CUBERANKEDMEMBER

CUBERANKEDMEMBER 関数は、Excel の OLAP キューブ関数の一つで、Power Pivot や外部の多次元データソース(OLAP キューブ)を使っているときに、順位付きで特定のメンバーを取得したい場合に使用します。


🧠 関数の目的

「上位3位の製品は?」「売上が5番目の顧客は?」といった、ランキングに基づいてメンバーを取り出す用途に使います。


✅ 構文

CUBERANKEDMEMBER(connection, set_expression, rank, )
引数説明
connection接続名(通常は "ThisWorkbookDataModel" など)
set_expressionMDX のセット式または CUBESET 関数で定義されたセット
rank取り出したい順位(1がトップ)
(省略可)セルに表示するカスタムの名前

📘 使用例

=CUBERANKEDMEMBER("ThisWorkbookDataModel", CUBESET("ThisWorkbookDataModel", "[Product].[Product Name].Members", "Top Products"), 1)

この式は、「Product Name」ディメンションの中で1位のメンバーを返します(CUBESETでセットを作り、1番目を取得)。


🎯 応用例:上位 5 件の売上商品をリスト表示

セル A1: =CUBESET("ThisWorkbookDataModel", "TopCount([Product].[Product Name].Children, 5, ([Measures].[Sales]))", "Top 5 Products")
セル A2: =CUBERANKEDMEMBER("ThisWorkbookDataModel", A1, 1)
セル A3: =CUBERANKEDMEMBER("ThisWorkbookDataModel", A1, 2)
セル A4: =CUBERANKEDMEMBER("ThisWorkbookDataModel", A1, 3)

⚠️ 注意点

  • rank がセット内の要素数を超えると #N/A が返ります。
  • CUBESET によってセットの並び順が決まるので、ORDERTopCount 関数などと組み合わせて順位付けをします。
  • 正しく動作するには、Power Pivot にデータモデルがある or OLAP サーバーに接続されている必要があります。

コメントを残す

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