ExcelのCUBEKPIMEMBER関数の使い方|KPIプロパティを返す

スポンサーリンク

ExcelのCUBEKPIMEMBER関数は、OLAPキューブに定義されたKPIのプロパティを返す関数です。KPIとはKey Performance Indicatorの略で、重要業績評価指標を意味します。経営ダッシュボードや財務レポートで「売上目標の達成率」「在庫回転の状態」などを数式で取り出したいときに役立ちます。

ピボットテーブルでKPIを表示する方法はよく紹介されています。一方でCUBEKPIMEMBERを使えば、レイアウト自由なダッシュボードを作れますよ。この記事では、CUBEKPIMEMBERの構文・5つのKPIプロパティ・CUBEVALUEとの組み合わせ・実務活用例まで解説します。

CUBEKPIMEMBER関数とは

ExcelのCUBEKPIMEMBER関数は、OLAPキューブ(Analysis ServicesやPower Pivotのデータモデル)に定義されたKPIから、特定のプロパティを返す関数です。返せるプロパティは値・目標・状態・傾向・重みの5種類です。

KPIには「実績値」「目標値」「達成度」「傾向」など複数のプロパティが含まれます。CUBEKPIMEMBERは引数で指定した1つのプロパティを取り出します。

KPIとキューブの関係

KPIは、キューブの中で「実績メジャー」「目標値」「ステータス計算式」「傾向計算式」をまとめたオブジェクトです。Power Pivotなら「KPIの作成」機能で簡単に定義できます。

用語意味
キューブ多次元データベースの単位(売上・在庫など)
メンバー次元の構成要素(例: 「2025年4月」「東京支店」)
KPI業績指標のひとまとまり(実績・目標・状態・傾向)
プロパティKPIを構成する要素(値・目標・状態など)

利用できる環境

CUBEKPIMEMBERはExcel 2007以降で利用可能です。Microsoft 365・Excel 2024・Excel 2021でも使えます。お使いの環境がOLAPキューブまたはPower Pivotのデータモデルに接続できるか、確認しておきましょう。

Excel for Macではデータモデル経由のみのサポートとなります。

CUBEKPIMEMBER関数の構文と引数

CUBEKPIMEMBER関数の構文は次のとおりです。

=CUBEKPIMEMBER(connection, kpi_name, kpi_property, )

引数は次の4つです。

引数必須説明
connection必須キューブへの接続名(テキスト)
kpi_name必須KPIの名前(テキスト)
kpi_property必須返すプロパティの番号(1〜6の整数または定数)
caption任意セルに表示する代替テキスト

connection(接続名)

データモデル使用時は "ThisWorkbookDataModel" を指定します。外部のSQL Server Analysis Servicesなどに接続している場合は、ODCファイルで定義した接続名を指定します。

文字列はダブルクォーテーションで囲むのを忘れないでください。

kpi_name(KPI名)

キューブ側で定義済みのKPI名を文字列で指定します。例えば "売上目標""Sales Amount Quota" のような名前です。

kpi_property(プロパティ番号)

返したいKPIプロパティを1〜6の整数で指定します。詳細は次のセクションで解説します。

caption(セル表示用ラベル)

省略するとKPIのメンバー識別子がそのままセルに表示されます。任意のラベルを表示したい場合は、"売上達成率" のように指定しましょう。

KPIプロパティ5種類+現在のメンバー

kpi_propertyには6つの値が指定できます。よく使うのはValue(1)とGoal(2)ですよ。

番号定数名プロパティ意味
1KPIValue値(Value)KPIの実績値
2KPIGoal目標値(Goal)KPIの目標
3KPIStatus状態(Status)達成度を示す数値
4KPITrend傾向(Trend)時間経過の推移
5KPIWeight重み(Weight)相対的重要度
6KPICurrentTimeMember現在のメンバー関連する時間メンバー

Value(1)— 実績値

KPIの実績値を取得します。例えば「今月の売上実績」「現在の在庫回転率」など、現時点での値です。

Goal(2)— 目標値

KPIに設定された目標を取得します。「今月の売上目標」「目標とする在庫回転率」が返ります。

Status(3)— 状態

KPIの達成度を数値で返します。慣例として次の値が使われます。

意味
1達成(良好)
0注意(要観察)
-1未達(要対応)

ただし、ステータスの値はキューブ設計者が自由に定義できます。アイコンセットの「3つの信号」を使うと視覚的に分かりやすくなりますよ。

Trend(4)— 傾向

KPIの時間経過に伴う変化方向を数値で返します。

意味
1上昇傾向
0横ばい
-1下降傾向

矢印アイコン(↑→↓)と組み合わせるとトレンドが直感的に伝わります。

Weight(5)— 重み

複数のKPIをまとめた総合スコアを計算する場合の、各KPIの重要度を返します。例えば売上KPIに0.6、利益KPIに0.4といった重み付けです。

CurrentTimeMember(6)— 現在のメンバー

KPIに関連付けられた時間メンバー(例: 「2025年4月」)を返します。時系列ダッシュボードで「いつの実績か」を表示する際に役立ちます。

基本的な使い方|CUBEVALUEとセットで使う

ここがCUBEKPIMEMBERの最大のポイントです。CUBEKPIMEMBERは「メンバー名」を返すだけの関数です。数値そのものを取得するにはCUBEVALUE関数(キューブから値を取り出す関数)と組み合わせる必要があります。

ステップ1: CUBEKPIMEMBERでKPIプロパティのメンバーを取得

セルA2に次の数式を入力します。

=CUBEKPIMEMBER("ThisWorkbookDataModel", "売上目標", 1, "売上実績")

このセルには「売上実績」というキャプションが表示されます。内部ではKPIの「Value」プロパティのメンバー識別子が格納されています。

ステップ2: CUBEVALUEで数値を取得

セルB2にCUBEVALUEを書き、A2を参照します。

=CUBEVALUE("ThisWorkbookDataModel", A2)

これでA2のメンバー識別子に対応する数値(売上実績)が取得できます。

ステップ3: 目標値も同じパターンで取得

セルA3とB3に目標値の数式を入れます。

A3: =CUBEKPIMEMBER("ThisWorkbookDataModel", "売上目標", 2, "売上目標")
B3: =CUBEVALUE("ThisWorkbookDataModel", A3)

ステップ4: 達成率を計算

セルC2に達成率を計算します。

=B2/B3

実績÷目標で達成率が算出できます。仮に売上実績が850万円・売上目標が1,000万円なら、達成率は85%(=0.85)になります。

経営ダッシュボードでの実務活用例

ここではCUBEKPIMEMBERを使った経営ダッシュボードの3つの活用例を紹介します。

活用例1: 売上達成率ダッシュボード

部門別の売上達成率を一覧表示するダッシュボードです。

部門実績目標達成率状態
営業1部850万1,000万85%注意
営業2部1,100万1,000万110%達成
営業3部720万1,000万72%未達

各セルの数式は次のようになります(営業1部の例)。

実績: =CUBEVALUE("ThisWorkbookDataModel", CUBEKPIMEMBER("ThisWorkbookDataModel", "売上目標", 1), "[部門].[営業1部]")
目標: =CUBEVALUE("ThisWorkbookDataModel", CUBEKPIMEMBER("ThisWorkbookDataModel", "売上目標", 2), "[部門].[営業1部]")
達成率: =B2/C2
状態: =CUBEVALUE("ThisWorkbookDataModel", CUBEKPIMEMBER("ThisWorkbookDataModel", "売上目標", 3), "[部門].[営業1部]")

「状態」列に条件付き書式のアイコンセット(3つの信号)を設定すると、信号機のような可視化ができますよ。

活用例2: 利益率トレンド表示

利益率KPIの傾向(Trend)プロパティを使って、時系列の推移を矢印で表示します。

=CUBEVALUE("ThisWorkbookDataModel", CUBEKPIMEMBER("ThisWorkbookDataModel", "利益率", 4))

戻り値が1なら↑、0なら→、-1なら↓のアイコンを表示するように条件付き書式を設定します。

活用例3: 在庫回転KPIの目標差分

在庫回転率の実績と目標の差分を表示します。

A1: =CUBEKPIMEMBER("ThisWorkbookDataModel", "在庫回転", 1, "実績")
B1: =CUBEVALUE("ThisWorkbookDataModel", A1)
A2: =CUBEKPIMEMBER("ThisWorkbookDataModel", "在庫回転", 2, "目標")
B2: =CUBEVALUE("ThisWorkbookDataModel", A2)
C1: =B1-B2

差分がマイナスなら赤、プラスなら青で表示するなどの条件付き書式と組み合わせると、ひと目で状況が把握できます。

CUBE系関数との使い分け

ExcelのCUBE系関数は7種類あります。それぞれの役割を整理しておきましょう。

関数用途CUBEKPIMEMBERとの関係
CUBEVALUEキューブから値(数値)を取得KPIプロパティの数値取得にペアで使う
CUBEMEMBER次元・階層のメンバーを取得KPI以外のメンバー指定に使用
CUBESETメンバーの集合を定義複数メンバーをまとめて扱う
CUBESETCOUNTセットのメンバー数を取得セットのサイズ確認
CUBERANKEDMEMBERセット内のN番目のメンバーを返すランキング表示に使用
CUBEMEMBERPROPERTYメンバーのプロパティを取得メンバー属性の取得
CUBEKPIMEMBERKPIプロパティのメンバーを返すKPI管理専用

CUBEKPIMEMBER vs CUBEMEMBER

CUBEMEMBERは次元やメジャーのメンバーを返す汎用関数です。CUBEKPIMEMBERはKPI専用で、KPIに紐づく5つのプロパティ(値・目標・状態・傾向・重み)にアクセスできます。

KPIを使わないシンプルな値取得ならCUBEMEMBER、KPI管理ならCUBEKPIMEMBERを選びます。

CUBEKPIMEMBER vs CUBEVALUE

CUBEVALUEは「数値」を返し、CUBEKPIMEMBERは「メンバー名」を返します。CUBEKPIMEMBERだけでは数値を取得できないため、CUBEVALUEとセットで使います。

よくあるエラーと対処法

CUBEKPIMEMBERを使っていると、いくつかのエラーに遭遇します。それぞれの原因と対処法を整理しました。

エラー原因対処法
#GETTING_DATAデータ取得中の一時状態自動更新を待つ
#N/AKPI名やプロパティが見つからないKPI名のスペルとキューブ側の定義を確認
#NAME?関数名のスペルミス、文字列の引用符抜け構文を確認
#VALUE!引数の型が不正kpi_propertyに1〜6を指定
#REF!接続が無効データソース接続を確認

#NAME? エラーの典型例

誤: =CUBEKPIMEMBER(ThisWorkbookDataModel, 売上目標, 1)
正: =CUBEKPIMEMBER("ThisWorkbookDataModel", "売上目標", 1)

connectionとkpi_nameは文字列なので、ダブルクォーテーションで囲みましょう。

#N/A エラーの典型例

KPIが定義されていないキューブにCUBEKPIMEMBERを使うと#N/Aが返ります。Power PivotのデータモデルでKPIが作成済みか、確認してください。

#VALUE! エラーの典型例

誤: =CUBEKPIMEMBER("ThisWorkbookDataModel", "売上目標", 7)
正: =CUBEKPIMEMBER("ThisWorkbookDataModel", "売上目標", 1)

kpi_propertyは1〜6の範囲です。7以上を指定すると#VALUE!が返ります。

CUBEKPIMEMBERを使う前のチェックリスト

スムーズに使い始めるためのチェックリストを用意しました。

  • [ ] Power Pivotまたは外部キューブに接続済みか
  • [ ] キューブにKPIが定義されているか
  • [ ] KPI名・プロパティ番号が正しいか
  • [ ] 接続名がダブルクォーテーションで囲まれているか
  • [ ] 数値取得にはCUBEVALUEと組み合わせているか

特に「CUBEVALUEとセットで使う」点は、初めて使う方が必ずつまずくポイントなので注意しましょう。

まとめ|CUBEKPIMEMBERでKPIダッシュボードを自由に組む

ExcelのCUBEKPIMEMBER関数は、OLAPキューブのKPIプロパティを取得する専用関数です。要点を整理します。

項目内容
構文=CUBEKPIMEMBER(connection, kpi_name, kpi_property, )
プロパティ番号1=Value、2=Goal、3=Status、4=Trend、5=Weight、6=CurrentTimeMember
戻り値KPIプロパティのメンバー名(数値ではない)
数値取得CUBEVALUEとセットで使う
主な用途経営ダッシュボード、KPI管理、達成率可視化

ピボットテーブルに依存せず、数式ベースで自由なレイアウトのKPIダッシュボードが組めるのがCUBEKPIMEMBERの魅力です。CUBEVALUEとの組み合わせを覚えれば、実績・目標・状態・傾向の4要素を1画面に集約した経営レポートが作れますよ。

CUBE系関数のシリーズ記事もあわせてチェックしてみてください。

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