PowerPivot for Excel を使ってみよう!

ここでは実際にSQL Server に接続して、PowerPivot for Excel を利用する方法について説明します。独自にデータベースを用意する必要がないので、PowerPivot for Excel を直ぐに体験できます。Excel を利用したことがある人であれば、容易に操作をマスターすることができるでしょう。簡単、強力なPowerPivot for Excel を体験してください。

主なコンテンツ(9章から構成)
1. このページで体験できること

ここでは、「利用シナリオ」で紹介したPowerPivot for Excel ファイルを実際に作成する方法について紹介します。業務で応用可能なテクニックを実際に体験することができます。

ここで作成を紹介するPowerPivot for Excel は次の4つです。

  1. 商品区分(部門)別売上ランキング表
  2. 時間帯別来店者数一覧(グラフ)
  3. 仕入先別利益率管理表
  4. 店舗(地域)別売上バラツキ分析表

PowerPivot for Excel 使用の流れをつかむため、基本操作(3章)に加え、「A. 商品区分(部門)別売上ランキング」(4章)の作成の流れを紹介します。B(5章)、C(6章)、D(7章)については、基本操作を理解していることを前提に設定パラメータやポイントのみを紹介しますので、まず、3章、4章をご覧いただき、その後、残りの章を必要に応じて参照することをお勧めします。

「A. 商品区分(部門)別売上ランキング」の完成イメージは下記のようになります。

101

このページではPowerPivot for Excel の操作手順をステップバイステップで一通り説明しますが、PowerPivot for Excel の操作を体感してもらうことをゴールとしているため、インストールの細かいオプションや、レポート作成上のテクニック、技術情報については説明しません。これらについては、マイクロソフトのWebサイト上に詳しいページや資料が豊富に用意されています。Webサイトや資料については9章 の「参考情報」を参照してください。

2. 環境セットアップ

PowerPivot for Excel を利用するためには、Microsoft Office 2010 (Excel 2010) と、そのアドイン(追加機能)であるPowerPivot for Excel が必要になります。

PowerPivot for Excel については、無償でダウンロードすることができます。Microsoft Office 2010 についても試用版をダウンロードすることができます。

2.1 PowerPivot for Excel のダウンロード

PowerPivot for Excel は下記サイトより、無償でダウンロードすることができます。

Microsoft SQL Server 2008 R2 - PowerPivot for Microsoft Excel 2010 - RTM

なお、ダウンロードは、まず、HTMLファイルをダウンロードし、そこに記載されているURLから行います。32bit、64bitの2つのバージョンが存在しますので、お使いの環境に適したバージョンをダウンロードください。

2.2 インストールと動作確認

ダウンロードしたファイルを実行し、インストールを行います。インストール後、Excel を起動すると、PowerPivot for Excel をインストールするか確認画面が表示されますので、「インストール」をクリックし、インストールを完了させます。

インストールが正常に完了すると、Excel のリボンコントロールに「PowerPivot」タブが追加されます。これで、PowerPivot for Excel を利用する準備が整いました。

001
3. 基本操作

では、基本操作を行ってみましょう。ここでは、PowerPivot for Excel (PowerPivot ウインドウ) の起動、分析対象となるデータの取り込み、データの調整(列の追加など)を行ってみましょう。

3.1 PowerPivot for Excel とPowerPivot ウインドウの起動

まず、Excel を起動します。次に、リボンメニューから、「PowerPivot」タブを選択します。左端に表示される「PowerPivot ウインドウ」をクリックします。すると、PowerPivot ウインドウが表示されます。

002

PowerPivot for Excel の利用に際しては、まず、このPowerPivot ウインドウで、データの読み込み、調整を行い、それらをExcel シート上で分析(ピボットテーブル、グラフなどを利用)するといった流れになります。

3.2 データの読み込み

では、まず、分析の対象となるデータを、SQL Server から読み込んでみましょう。データの取り込み処理は、「テーブルのインポートウィザード」を利用して簡単に行うことができます。

なお、PowerPivot for Excel では、SQL Server はもちろん、Web、Excel、他社製データベースなど、あらゆるデータソースからデータを取り込むことが可能です。

3.2.1 テーブルのインポートウィザードの起動

PowerPivot ウインドウの「ホーム」タグを選択し、さらに、「データベース」プルダウンから、「SQL Server 」を選択します。

003
3.2.2 データベースの指定

「Microsoft SQL Server データベースへの接続」画面で、読み取り先のデータベースを指定します。「サーバー名」および「データベース名」を指定します。ここでは、サーバー名としてlob.msbi.jp 、データベース名としてNorthwindJforXp を指定します。「次へ」をクリックします。ここでは、サーバ名の入力においては、サーバ名に加えポート番号も指定しています。

なお、「次へ」のタイミング等で認証を求められた場合は、下記表のIDとパスワードを入力してください。
102
表:Microsoft SQL Server データベースへの接続 設定内容
サーバー名,ポート番号
lob.msbi.jp,1256

データベース名
NorthwindJforXp
表:Microsoft SQL Server 認証 ユーザー名及びパスワード
ユーザー名
BIUser
パスワード
Self-ServiceBI55!
3.2.3 インポート方法の選択

データをインポートする方法を選びます。取得の方法としては、GUIを利用して取得するデータを選択するか、SQL文でクエリを記述するかの2つが選べます。ここでは、GUIを利用するため、上段の、「インポートするデータをテーブルとビューの一覧から選択する」を選択します。「次へ」をクリックします。

005
3.2.4 テーブルとビューの選択

取得対象として指定したデータベースのテーブルとビューの一覧が表示されます(ビューは生成されていないと表示されません)。ここでは、まず、分析の主対象となる「POSデータ」テーブルを選択します。続いて、リストの下部にある「関連テーブルの選択」ボタンをクリックします。すると、「商品」、「天気」、「店舗」の3つのテーブルが自動的に選択されます。さらにもう一度、「関連テーブルの選択」をクリックします。すると、さらに「仕入先」、「受注明細」、「商品区分」3つのテーブルが追加されます。

006

この「関連テーブルの選択」は、「POSデータ」テーブルに蓄積されたデータに関連付けられたデータを、他のテーブルから取得するために行います。例えば。「POSデータ」テーブルには、「商品コード」は含まれていますが、「商品名」や「単価」が保持されていません。その為、「商品名」や「単価」を保持する「商品」テーブルを「関連テーブルの選択」により、取得したわけです。さらに、2回押したのは、「商品」テーブルには、「区分コード」は含まれていますが、「区分名」は含まれていません。その為、それを保有する「商品区分」テーブルを「関連テーブルの選択」を再度クリックすることで取得しました。他のテーブルに関しても同様です。

「完了」をクリックします。

完了をクリックすると、データの取り込み処理が実行されます。「成功」と表示されるので、「閉じる」をクリックします。これで、データの取り込みは終了です。

007
3.3 取り込みデータの確認

では、取り込まれたデータを確認してみましょう。取り込んだ各テーブルは、PowerPivot ウインドウ下部にあるタブとして列挙され、それらを選択することで、各テーブルにアクセスすることができます。ここでは7つのテーブル(タブ)が確認できます。では、「POSデータ」テーブルを見てみましょう。先ほど、説明したとおり、「POSデータ」テーブルには、「商品コード」は含まれていますが、「商品名」や商品の「単価」などは存在していません。

008

次に、「商品」テーブルを見てみましょう。こちらには「商品コード」はもちろん、「商品名」、「単価」などの項目が存在していることが確認できます。

009

お気づきかもしれませんが、この2つのテーブルは「商品コード」を通じて関連づけられています(リレーショナルが組まれています)。また、もし、あらかじめ関連付けが行われていない場合にも、PowerPivot for Excel 上で関連付けを行うことが可能です(関連付けの方法については後述 (4.6.2 で紹介) します)。

3.4 取り込んだデータの調整

では、分析の主対象となる「POSデータ」テーブルを改めて見てみましょう。データ分析を行うための最低限度の情報は含まれているようですが、数字を中心にした情報が多く、直感的に意味を理解しづらい状態です。また、分析上重要となる各商品の小計なども含まれていません。ここでは、分析に先立ち、あらかじめ取扱いやすいようにデータの調整を行っておきましょう。

3.4.1 列の追加:関連づけられたデータを取得(「商品名」、「単価」を取得)

「POSデータ」テーブルを見やすくするために、関連付けられたテーブルから、データを取得してみましょう。まず、「商品」テーブルから「商品名」を取得し表示してみましょう。

右端のタイトル欄に 「列の追加」と表示された(最も上の)セルを選択し、「=RELATED('商品'[商品名])」(「」は入力しません)と入力します。入力が完了したら、エンターを押します。すると、「商品コード」に紐づけられた「商品名」が取得され表示されます。列名が「CalculatedColumn1」と自動付与されますが、わかりにくいので「商品名」と変更します。

010
表:追加列情報
対象テーブル
POSデータ
追加列名
商品名
DAX式
=RELATED('商品'[商品名])

RELATEDはDAX (Data Analysis Expression) 式と呼ばれるもので、Excel の式のように利用することができ、データに対する様々な処理を記述することができます。RELATED は、関連づけられたテーブル、列から、情報を取得する式です。

次に、「単価」も取得します。「商品名」と同様に「列の追加」の1つ下のセルを選択し、「=RELATED('商品'[単価])」と入力します。すると「単価」が表示されます。列名を「単価」と変更しておきましょう。

011
表:追加列情報
対象テーブル
POSデータ
追加列名
単価
DAX式
=RELATED('商品'[単価])

最後に、「POSデータ」テーブルに存在していた販売「数量」と、「商品」テーブルから取得し追加した「単価」を掛け合わせて小計を表示してみましょう。

「列の追加」の1つ下のセルを選択し、「=[単価]*[数量]」と入力します。計算が行われ小計が表示されます。列名を「小計」と変更しておきましょう。

012
表:追加列情報
対象テーブル
POSデータ
追加列名
小計
DAX式
=[単価]*[数量]

データの調整は以上です。

4. 「A. 商品区分(部門)別売上ランキング表」を作ってみる

ここからが本番です。では、実際にPowerPivot for Excel の機能を使って分析資料を作成してみましょう。

4.1 ピボットテーブルの作成

PowerPivot ウインドウの「ホーム」タブを選択し、表示されるボタンから「ピボットテーブル」をクリックすると「ピボットテーブルの作成」ダイアログが表示されるので、「新しいワークシート」を選択します。

013
014

ピボットテーブルを含む、新しいワークシートが生成されました。ピボットテーブルを選択すると右に表示されるPowerPivot フィールドの一覧が表示されます。これらのフィールドを選択し、適切な要素(行ラベルや列ラベルなど)にドラッグ&ドロップすることで、直感的かつ簡単にデータ分析を行うことができます。

015
4.2 行ラベルの設定

では、まず、ピボットテーブルの縦の列を設定しましょう。ここでは商品の売上ランキング一覧を作りたいので、その主要素となる商品名を追加します。

「行ラベル」に「商品」テーブルの「商品名」フィールドをドラッグ&ドロップします。

商品名が縦に列挙されました。

016
4.3 「Σ 値」の設定

ランキングを計算するために必要なデータは、各商品の売上合計ですので、ここでは、先ほど基本操作で「POSデータ」テーブルに追加した「小計」列を利用します。「POSデータ」テーブルから「小計」フィールドを「Σ 値」へドラッグ&ドロップします。商品毎の売上合計が表示されました。小計の合計列の任意のセルを選択し、「降順」で並べ替えを行ってみてください。本題からはそれますが、ここまでの操作で、全商品、全店における売れ筋ランキングは完成しています。後は、商品区分での整理、店舗の制限(東京店のみ表示)を行うだけです。

017
4.4 区分(部門)別に整理する

全行品が対象になったランキングを区分名により整理します。その為には「行ラベル」に「商品区分」テーブルから「区分名」を追加します。なお、追加の順番は、「商品名」より先(上)でなくてはなりません。そこで、区分名をドラッグし、商品名の上部でドロップします。これで、商品区分名別のランキングは表示されました。

018

なお、区分名を追加すると小計の合計が各区分毎に表示されますが、必要ないので、ここでは非表示にします。「ピボットテーブルツール」のデザインを開き、「小計」をプルダウンさせ、「小計を表示しない」に設定します。

019
4.5 スライサーを利用する

「店舗」テーブルの「店舗名」を「垂直スライサー」にドラッグ&ドロップします。するとピボットテーブルの左側に店舗名から成るボタンが表示されます。このボタンを押すことでボタンに表示された条件にデータを制限することができます。ここでは「東京店」ボタンをクリックします。レポートフィルターを用いても同じ効果が得られますが、スライサーの方が直感的かつ操作が簡単です。

020

なお、スライサーをOFFにしたい場合は、スライサー画面の右上にある、「ロードに×印」アイコンをクリックします。

表:ピボットテーブル設定情報
垂直スライサー
なし
水平スライサー
店舗名
レポートフィルター
なし

列ラベル
なし
行ラベル

区分名
商品名
Σ 値
小計の合計
4.6 独自のデータソースを分析データとして追加する

ここまでは、SQL Server から取得したデータのみを元に、分析を行ってきましたが、PowerPivot for Excel を利用すれば簡単に分析データを追加し、独自の視点での分析を行うことができます。ここでは、Webサイト上にある「商品ランキングデータ」をデータソースとして取得し、自社のランキングと比較を行う例を試してみたいと思います。

Webに限らず、データベース以外からデータを取り込み、分析を行う手順は、データの取得、(既存データとの)関連付け設定、分析の3つのステップとなります。

4.6.1 Webからデータを取り込む

データの取り込みと言っても難しいことは何一つありません。基本的にコピーペーストを行うだけです。Web上で、必要なデータをコピーします。

なお、サンプルのHTMLファイルはこちらで取得できます。

021

その後、PowerPivot ウインドウの「貼り付け」を選択すると、コピーした情報が貼り付けプレビューとして表示されます。

022

テーブル名を「全国ドリンクランキング」に設定しOKをクリックします。新しいタブが追加されました。

023
4.6.2 データの関連付け(リレーションシップの作成)を行う

新規のデータを活用するためには、既存のデータとの関連づけが必要になります。ここでは、商品の名前をキーとして関連付を行います。「全国ドリンクランキング」の「商品」列を選択した状態で、PowerPivot ウインドウの「デザイン」タグを選択し、さらに、「リレーションシップの作成」を選択します。

024

「リレーションシップの作成」ダイアログが表示されるので、「関連する参照テーブル」を「商品」に、「関連する参照列」を「商品名」にセットし、作成をクリックします。これで、関連付けが行われました。関連づけるデータの名前が違っても問題はありません。ただし、データ内容は同じルールに従っている必要があります。

025
4.6.3 新しく取り込んだデータを利用して分析する

先ほどのピボットテーブルを開きます。PowerPivot ウインドウ側でデータが変更されたため、PowerPivot フィールド一覧に「PowerPivot データが更新されました(最新の情報に更新)」ボタンが表示されていますのでクリックしデータを更新します。

026

これで、先ほど追加した「全国ドリンクランキング」テーブルと関連付けデータが読み込まれます。

PowerPivot フィールド一覧に追加された「全国ドリンクランキング」から、「順位」を「Σ 値」にドラッグ&ドロップします。すると、全国におけるドリンクランキングが、自社店舗における飲料区分売上ランキングにマップされ、比較が可能になりました。ここでは、飲料だけを対象にしましたが、データさえあれば、どのような分析も可能です。

027

これで完成です。

5.「B. 時間帯別来店者数一覧(グラフ)」を作ってみる

ここでは操作を簡略化し、テーブル列の追加項目や、パラメータ設定のみ記述します。

本章の作業を開始するに当たり、Excel の起動状態から始められる方は、3. の「基本操作」を行い、分析対象データを取得後、作業を行ってください。また、4章から継続して作業を進める方は、[PowerPivot ウィンドウ]で[ピボットテーブル]ボタンより、新規にピボットテーブルを作成([新しいワークシート]を選択)後、本章の作業をお進め下さい。

5.1 データの調整

ここでは、「POSデータ」テーブルに「精算時間帯」という列を追加します。精算時間帯は、「POSデータ」テーブルの「精算日時」からDAX式により時間を抽出することで取得します。

5.1.1 列の追加
表:追加列情報
対象テーブル
POSデータ
列名
精算時間帯
DAX式
=HOUR([精算日時])
5.2 ピボットテーブルの設定
5.2.1 「新しいメジャー」の追加

ここでは来店者数を取得するための新しい項目(メジャー)を追加します。メジャーの追加は、「PowerPivot タブ」で表示されるメニューの中から選択(PowerPivot ウインドウアイコンの右隣り)するか、「PowerPivot フィールド一覧」において「POSデータ」を右クリックし、表示されるプルダウンの一番下の「新しいメジャーの追加...」を選択することで行います。

表示される「メジャーの設定」ダイアログに下記の表を参考に値を入力します。

表:追加メジャー情報
テーブル名
POSデータ
メジャー名
来店者数
カスタム名
来店者数
DAX式
=COUNTROWS(DISTINCT('POSデータ'[レシートナンバー]))

レシートナンバーは重複しているため、DISTINCT により重複を排除し、その上でCOUNTROWS により、数を数えています。レシート数は客数と一致していると想定しています。そして、その数を時間帯別に分離し、時間帯別の来店者数を算出し、時間帯による混雑度合の把握しようとしています。

5.2.1 行ラベル

「精算時間帯」を追加

5.2.2 「Σ 値」

「来店者数」を追加

5.2.3 レポートフィルター、スライサーの設定

垂直スライサーに「店舗名」を追加。東京店を選択。

表:ピボットテーブル設定情報
垂直スライサー
店舗名
水平スライサー
なし
レポートフィルター
なし

列ラベル
なし
行ラベル
精算時間帯
Σ 値
来店者数
5.3 ピボットグラフの追加

ピボットテーブルツールのオプションで、「ピボットグラフ」を選択すると「グラフ挿入」ダイアログが開くので、テンプレートから縦棒を選択し、デフォルト値(左上)のテンプレートを選択し、OKをクリック。

時間帯別の来店者数が棒グラフで表示されます。これで完成です。

5.4 完成イメージ

完成イメージとパラメータ。パラメーター配置等の参考にしてください。

110
6. 「C. 仕入先別利益率管理表」を作ってみる

ここでは操作を簡略化し、テーブル列の追加項目や、パラメータ設定のみ記述します。

本章の作業を開始するに当たり、Excel の起動状態から始められる方は、3. の「基本操作」を行い、分析対象データを取得後、作業を行ってください。また、4章から継続して作業を進める方は、[PowerPivot ウィンドウ]で[ピボットテーブル]ボタンより、新規にピボットテーブルを作成([新しいワークシート]を選択)後、本章の作業をお進め下さい。

6.1 データの調整

この分析のためには、利益率データが必要なため、「商品」テーブルの「仕入原価」と「単価」を利用して「商品」テーブルに「利益率」列を1つ追加します。

6.1.1 列の追加
表:追加列情報
対象テーブル
商品テーブル
列名
利益率
DAX式
=(1-([仕入原価]/[単価]))
書式
% (小数点1桁)
6.2 ピボットテーブルの設定
6.2.1 行ラベル

「仕入先名」を追加

6.2.2 「Σ 値」

「利益率」を追加し、集計の方法を平均に変更

集計方法の変更は、「Σ 値」に追加したフィールド名を右クリックし表示される「集計の方法」プルダウンにより行います。

表:ピボットテーブル設定情報
垂直スライサー
なし
水平スライサー
なし
レポートフィルター
なし

列ラベル
なし
行ラベル

仕入先名
商品名
Σ 値


利益の平均
小計の合計
順位
書式指定など
6.3.1 書式変更

利益率の平均の書式を%、小数点1桁に設定。

6.3.2 並び替え

「利益率の平均」列の任意のセルを選択し、並び替え「昇順」を選択します。こうすることで、利益率が悪い仕入先順に票がソートされます。

これで完成です。

6.4 完成イメージ

完成イメージとパラメータ。パラメーター配置等の参考にしてください。

111
7. 「D. 店舗(地域)別売上バラツキ分析表」を作ってみる

ここでは操作を簡略化し、テーブル列の追加項目や、パラメータ設定のみ記述します。

本章の作業を開始するに当たり、Excel の起動状態から始められる方は、3. の「基本操作」を行い、分析対象データを取得後、作業を行ってください。また、4章から継続して作業を進める方は、[PowerPivot ウィンドウ]で[ピボットテーブル]ボタンより、新規にピボットテーブルを作成([新しいワークシート]を選択)後、本章の作業をお進め下さい。

7.1 データの調整

既にあるデータだけで分析が可能なため、特にデータの調整は必要ありません。

7.2 ピボットテーブルの設定
7.2.1 行ラベル

「商品名」を追加

7.2.2 列ラベル

「店舗名」を追加

7.2.3 Σ 値

「数量」を追加

表:ピボットテーブル情報
垂直スライサー
なし
水平スライサー
なし
レポートフィルター
なし

列ラベル
店舗名
行ラベル
商品名
Σ 値
数量の合計
7.3 Excel 関数および書式設定
7.3.1 標準偏差を求める

Excel 関数であるSTDEV() を利用します。商品、店舗毎の数量合計の標準偏差を取得します。(値が大きいほど、店舗毎の商品の売れ行きにバラツキが大きい目安となる)

7.3.2 条件式書式を適用する

標準偏差列に、データバーを適用し、バラツキの多い商品を直感的にわかるようにします。

7.4 完成イメージ

完成イメージとパラメータ。パラメーター配置等の参考にしてください。

112
8. SharePoint Server 2010 にアップロードして共有する

作成したPowerPivot for Excel ファイルは、PowerPivot for Excel がインストールされたSharePoint Server 2010 上で共有することができます。

8.1 SharePoint Server 2010 にアップロードする

アップロードはSharePoint Server 上のサイトの、PowerPivot ギャラリー、ドキュメントタブに存在する「ドキュメントのアップロード」をクリックして行います。

028
029
8.2 アップロードされたファイルを共有(閲覧)する

アップロードされたファイルは、Web ブラウザ上で閲覧することが可能です。

030
9. PowerPivot for Excel およびPowerPivot for SharePoint に関する情報

この体験ページでは、操作の概要について説明しましたが、マイクロソフトのWebサイトでは、この他にも有益な情報が提供されています。是非、下記コンテンツも合わせてご利用ください。

* Intel、インテル、Intelロゴ、Xeon、Xeon Insideは、アメリカ合衆国およびその他の国におけるIntel Corporationの商標です。