【完全解説】Excelのキューブ関数全7種類!Office 365で使える関数の使い方と具体例

キューブ関数とは

Excelと外部の多次元データベース(OLAPキューブ)を連携させ、必要なデータを取り出して分析するための特殊な関数です。

「キューブ関数って全部で何個あるの?」「それぞれどう使えるの?」という疑問の回答をします。


キューブ関数全7種類を一覧でチェック!

でんちゃん
でんちゃん

まず、ExcelのOffice 365で利用できるキューブ関数全7種類を一覧で見てみましょう。

関数名構文(引数)関数の意味
CUBEVALUECUBEVALUE(接続, メンバー式, …)キューブから集計値(合計、平均など)を取得します。
CUBEMEMBERCUBEMEMBER(接続, メンバー式, キャプション)キューブからメンバー(項目名)を取得し、セルに表示します。
CUBEMEMBERPROPERTYCUBEMEMBERPROPERTY(接続, メンバー式, プロパティ)キューブからメンバーのプロパティ(付帯情報)を取得します。
CUBESETCUBESET(接続, セット式, キャプション, 並べ替え方法, ドリルダウン)キューブからセット(メンバーの集合)を作成し、セルに表示します。
CUBESETCOUNTCUBESETCOUNT(セット)CUBESET関数で作成したセットに含まれるアイテムの数を返します。
CUBERANKEDMEMBERCUBERANKEDMEMBER(接続, セット式, 順位, キャプション)セット内で指定した順位のメンバーを返します。
CUBEKPIMEMBERCUBEKPIMEMBER(接続, KPIの名前, KPIの部分, キャプション)KPI(主要業績評価指標)の情報をキューブから取得します。

キューブ関数(全7種類)の詳細解説と使い方

でんちゃん
でんちゃん

それでは、この一覧表の順番で、7つのキューブ関数を一つずつ詳しく見ていきましょう。

1. CUBEVALUE関数:キューブから「値」を取得する

CUBEVALUE関数は、キューブ関数の中で最も基本となる関数です。指定したメンバー(項目)の交差する位置にある集計された値(売上合計、平均価格など)を取り出す役割があります。

関数の意味

多次元データベース(OLAPキューブ)に接続し、指定されたメンバーやプロパティの組み合わせに対応する集計値を返します。これがデータ分析の核となる数値です。

構文

=CUBEVALUE(接続, メンバー式1, [メンバー式2], …)

  • 接続: キューブへの接続名(文字列)。
  • メンバー式1, 2, …: 取得したい値に対応するメンバーやセットを特定するテキスト式。最大255個まで指定できます。

関数の使用例

支店メンバー式(Dim.支店)商品カテゴリメンバー式(Dim.商品カテゴリ)2024年売上合計
東京"[支店].[東京]"電化製品"[商品カテゴリ].[電化製品]"=CUBEVALUE("接続名", "[期間].[2024]", "[支店].[東京]", "[商品カテゴリ].[電化製品]", "[測定値].[売上合計]")

2. CUBEMEMBER関数:キューブから「メンバー名」を取得する

CUBEMEMBER関数は、キューブの階層から特定のメンバー(項目)の名前を取得し、セルに表示する関数です。この関数で取得したメンバーは、後のCUBEVALUE関数などの引数として再利用できます。

関数の意味

OLAPキューブに接続し、特定のメンバーを返します。返されたメンバーは、CUBEVALUE関数などの他のキューブ関数の引数として利用できるようになります。

構文

=CUBEMEMBER(接続, メンバー式, [キャプション])

  • 接続: キューブへの接続名(文字列)。
  • メンバー式: メンバーを特定する多次元式(MDX)の文字列。
  • キャプション: セルに表示したい任意の別名(省略可)。

関数の使用例

セルメンバー式キャプション(表示名)取得結果
A2"[期間].[2025].[Q1]""2025年第1四半期"=CUBEMEMBER("接続名", "[期間].[2025].[Q1]", "2025年第1四半期")

3. CUBEMEMBERPROPERTY関数:メンバーの「プロパティ」を取得する

CUBEMEMBERPROPERTY関数は、CUBEMEMBER関数で取得したメンバーに付帯するプロパティ(属性情報)を取得する関数です。例えば、「社員」というメンバーから「部署名」や「入社年月日」などの情報を取得したい場合に役立ちます。

関数の意味

OLAPキューブに接続し、指定したメンバーのプロパティ値(属性情報)を返します。

構文

=CUBEMEMBERPROPERTY(接続, メンバー式, プロパティ)

  • 接続: キューブへの接続名(文字列)。
  • メンバー式: メンバーを特定する文字列。CUBEMEMBER関数で返されたセル参照も利用できます。
  • プロパティ: 取得したいプロパティの名前(文字列)。

関数の使用例

セル(メンバー)プロパティ名取得したい情報取得結果
B2"_Key"メンバーのキー値=CUBEMEMBERPROPERTY("接続名", B2, "_Key")
B3"部署名"メンバーの部署名=CUBEMEMBERPROPERTY("接続名", B2, "部署名")

4. CUBESET関数:「メンバーの集合」を作成する

CUBESET関数は、複数のメンバーをまとめてセット(集合)として定義する関数です。このセットは、CUBEVALUE関数や他のキューブ関数の引数として使用することで、複数のメンバーに対する操作を一度に行えるようになります。

関数の意味

OLAPキューブに接続し、メンバーまたはタプルのセット(集合)を定義します。このセットは、他のキューブ関数の引数として利用されます。

構文

=CUBESET(接続, セット式, [キャプション], [並べ替え方法], [ドリルダウン])

  • 接続: キューブへの接続名(文字列)。
  • セット式: セットを定義するMDXの文字列。
  • キャプション: セットに付ける表示名(省略可)。
  • 並べ替え方法: セットの並べ替え方法を指定する(省略可)。
  • ドリルダウン: セット内のメンバーがどのようにドリルダウンされるかを指定(省略可)。

関数の使用例

セルセット式(MDX)キャプション取得結果
A1"{[支店].[東京], [支店].[大阪], [支店].[福岡]}""主要3支店"=CUBESET("接続名", "{[支店].[東京], [支店].[大阪], [支店].[福岡]}", "主要3支店")

5. CUBESETCOUNT関数:セット内の「メンバー数」を数える

CUBESETCOUNT関数は、CUBESET関数で作成したセットに含まれるメンバーの総数を返す関数です。

関数の意味

CUBESET関数によって定義されたセットに含まれるアイテムの数を取得します。

構文

=CUBESETCOUNT(セット)

  • セット: CUBESET関数で作成されたセットを含むセルへの参照、またはCUBESET関数を直接記述したもの。

関数の使用例

セル(セット)取得結果(メンバー数)
A1(主要3支店のセット)=CUBESETCOUNT(A1)

6. CUBERANKEDMEMBER関数:セット内の「順位付きメンバー」を取得する

CUBERANKEDMEMBER関数は、CUBESET関数などで定義されたセットの中から、指定した順位(例: 上位3位、下から2番目など)に位置するメンバーを取得する関数です。

関数の意味

セット内でランク付けされた指定順位のメンバーを返します。たとえば、売上高トップ5のセットから、売上高が3番目のメンバー(支店名など)を取得したい場合に利用します。

構文

=CUBERANKEDMEMBER(接続, セット式, 順位, [キャプション])

  • 接続: キューブへの接続名(文字列)。
  • セット式: セットを定義するMDXの文字列、またはCUBESET関数で作成されたセットへの参照。
  • 順位: 取得したいメンバーの順位(数値)。
  • キャプション: セルに表示したい任意の別名(省略可)。

関数の使用例

セット(CUBESET)順位取得結果(メンバー名)
B1(売上上位10支店のセット)3=CUBERANKEDMEMBER("接続名", B1, 3, "売上3位の支店")

7. CUBEKPIMEMBER関数:KPIの「情報」を取得する

CUBEKPIMEMBER関数は、KPI(Key Performance Indicator:主要業績評価指標)に関連する情報を取り出す関数です。KPIの「値」「目標」「状態」などを取得できます。

関数の意味

KPI(目標値や達成度など)に関するメンバープロパティを返します。

構文

=CUBEKPIMEMBER(接続, KPIの名前, KPIの部分, [キャプション])

  • 接続: キューブへの接続名(文字列)。
  • KPIの名前: キューブで定義されているKPIの名前(文字列)。
  • KPIの部分: 取得したいKPIの要素を指定(例: _Goalで目標値、_Valueで実績値、_Statusで状態)。
  • キャプション: セルに表示したい任意の別名(省略可)。

関数の使用例

KPI名KPIの部分取得したい情報取得結果
売上達成率_Value実績値=CUBEKPIMEMBER("接続名", "売上達成率", "_Value")
売上達成率_Goal目標値=CUBEKPIMEMBER("接続名", "売上達成率", "_Goal")
売上達成率_Status状態(例: 達成/未達成を示すアイコン)=CUBEKPIMEMBER("接続名", "売上達成率", "_Status")

まとめ:キューブ関数でデータ分析を次のレベルへ

ExcelのOffice 365で使えるキューブ関数全7種類について、それぞれの役割、構文、そして具体的な使い方を解説してきました。

関数群役割主な関数
値・メンバー取得キューブからデータ本体やメンバー名を取得するCUBEVALUE, CUBEMEMBER, CUBEMEMBERPROPERTY
セット関連複数のメンバーをまとめて操作するためのセットを定義・利用するCUBESET, CUBESETCOUNT, CUBERANKEDMEMBER
KPI関連主要業績評価指標(KPI)の情報を取得するCUBEKPIMEMBER

これらのキューブ関数をマスターすれば、ピボットテーブルでは実現が難しいような複雑なレイアウトのレポート作成や、カスタム性の高いダッシュボード構築が可能になります。

「キューブ関数って難しい!」と感じるかもしれませんが、まずはCUBEMEMBER関数でメンバー名を取得し、次にCUBEVALUE関数で値を取得する、という基本の流れから試してみてくださいね。

コメント

タイトルとURLをコピーしました