クイックナビゲーション
CUBESET関数
概要
CUBESET関数は、OLAPキューブからセットを定義し取得するための高度な関数です。サーバー上のキューブにセット式を送信して、計算されたメンバーや組のセットを作成し、Excelに返します。ピボットテーブル分析や多次元データの操作に最適です。
構文
CUBESET(接続, セット式, [キャプション], [並べ替え順序], [並べ替えキー])
パラメータ
| パラメータ | タイプ | 必須 | 説明 |
|---|---|---|---|
| 接続 | 文字列 |
はい | キューブへの接続名を指定する文字列。Excelのデータ接続に登録された名前を使用します。 |
| セット式 | 文字列または範囲 |
はい | MDX形式のセット式、またはメンバー・組を含むセル範囲を指定します。 |
| キャプション | 文字列 |
いいえ | セットに表示するカスタムタイトル。省略時はキューブのデフォルトキャプションが使用されます。 |
| 並べ替え順序 | 数値または列挙 |
いいえ | 並べ替えの種類を指定(0=なし、1=昇順、2=降順、3=アルファベット昇順など)。 |
| 並べ替えキー | 文字列 |
いいえ | 並べ替えの基準となるメジャー名。並べ替え順序で昇順・降順を指定した場合に必要です。 |
CUBESET関数の使用
CUBESETはOLAPキューブデータを活用した高度な分析に使用します。ピボットテーブルでは実現できない動的セット作成や、特定条件に基づくメンバー抽出に最適です。販売上位TOP10店舗の抽出や、特定期間の売上比較セットなど、実務で頻繁に活用されます。
CUBESETの一般的な例
基本的な製品カテゴリセット
=CUBESET("販売データ","[製品].[すべての製品].Children","全製品カテゴリ")
製品階層の全カテゴリをセットとして取得し、'全製品カテゴリ'という名前で登録します。
売上上位5店舗の抽出
=CUBESET("販売データ","TOPCOUNT([店舗].[店舗名].Members, 5, [売上高])","売上TOP5店舗",1,"[Measures].[売上高]")
売上高で上位5店舗を抽出し、昇順で並べ替えます。
期間比較セット
=CUBESET("財務データ","{[日付].[2024].[1月]:[日付].[2024].[3月]}","1-3月集計")
2024年1月から3月の期間メンバーをセット化します。
よくある質問
一般的なエラーと解決策
#NAME? エラー
Cause: 無効な接続名またはOLAPサーバー未接続
Solution: [データ]タブ→[接続の管理]で接続を確認し、サーバーが稼働中であることを確認
#N/A エラー
Cause: セット式のMDX構文エラーまたは異なるディメンションの混在
Solution: MDX構文と全メンバーが同一ディメンションであることを確認
#VALUE! エラー
Cause: 並べ替え順序に並べ替えキーが必要なのに省略、または255文字超え
Solution: 並べ替え順序1・2時は並べ替えキー必須。長文はセル参照を使用
注記
- Excel 2007以降で使用可能
- 最大セットサイズはキューブ設定依存
- CUBESETCOUNT関数と組み合わせてセットサイズ確認可能
- ピボットテーブルの数式変換時はセッションベースオブジェクト参照不可
互換性
利用可能: Excel 2007, Excel 2010, Excel 2013, Excel 2016, Excel 2019, Excel 2021, Microsoft 365
利用不可: Excel 2003以前
コンテンツ最終レビュー: December 9, 2025
更新頻度: 必要に応じて
テスト済みExcelバージョン: Excel 2007+