ExcelでPower BIの売上レポートを再現してみた!成功した点・失敗した点と重要なポイント

Power BIは、インタラクティブなレポートやダッシュボードを作成できるツールとして人気があります。しかし、日頃からExcelを愛用している筆者はふと疑問に思いました。「もしPower BIのレポートをExcelで再現しようとしたら、どこまでできるのだろう?」
そこで今回は、Power Query(パワークエリ)、データモデル(Power Pivot)、DAXメジャー、ピボットテーブル/グラフ、スライサー/タイムライン、そしてレイアウト調整を駆使して、典型的なPower BIの売上レポートをExcel内で再現する試みに挑戦しました。
この記事では、ExcelでPower BIレポートの再構築に挑んだ結果、どこがうまくいき、どこがうまくいかなかったのかを詳しく解説します。
再現を目指したレポートの内容
今回ターゲットとしたのは、以下の要素を備えた標準的な売上概要ダッシュボードです。
- KPIカード: 総売上、総利益、利益率など
- トレンドライン: 月別売上の推移
- 内訳分析: カテゴリ別、地域別などの売上
- インタラクティブ性: 年度・カテゴリ・地域のスライサーと日付タイムライン
- ドリルダウン: 現在の選択条件で絞り込まれた詳細ビュー

この種のダッシュボードは多くのチームがPower BIで構成しており、非常によく使われる形式です。これをExcelで再現し、機能面とユーザー体験の両方をどこまで再現できるかを検証するのが目的でした。
ステップ1:Power Queryでデータを読み込み・クリーンアップ
- データタブを開き、データの取得からテキスト/CSVからなど目的のソースを選択します。
- ファイルを選択してインポートします。
- 読み込みまたはデータの変換をクリックしてデータセットを整形します。

- Power Query エディターで、日付型・整数型・通貨型など適切なデータ型を設定します。
- 余分な空白の削除(トリム)や表記ゆれの統一など、細かいデータクレンジングを行います。

- 閉じて次に読み込む…をクリックしてデータを取り込みます。
- 必要なオプションを選択します。
- テーブルまたは接続のみ作成する
- このデータをデータモデルに追加するにチェック
- OKをクリック

- 同じ手順ですべてのデータをインポートします。
Excelが成功した点:
- Power Queryの機能はPower BIとほぼ同等
- データ変換機能が非常に強力
- 複数データソースへの接続も問題なく動作
Excelが失敗した点:
- 増分更新(インクリメンタルリフレッシュ)のオプションがない
- ワークシートあたり約104万行という上限がある
- 大規模データセットではパフォーマンスが低下する
- 手動更新が必要(ゲートウェイによるスケジュール更新不可)
ステップ2:データモデルでリレーションシップを構築(Power Pivot)
- データタブからデータモデルの管理を選択します。
- またはPower Pivotタブから管理を選択します。

- 以下のようなリレーションシップを追加します:
- Sales[ProductID] → Products[ProductID]
- Sales[CustomerID] → Customers[CustomerID]
- Customers[RegionID] → Regions[RegionID]

- フィールドリストを整理するため、キー列や技術的な列をクライアントツールから非表示にします。
Power BIの場合: リレーションシップを自動検出して作成してくれます。さらに調整したい場合は、ドラッグ&ドロップで簡単に作成できます。
Excelの場合: Power Pivotでも同様のリレーションシップモデリングが可能ですが、管理画面はやや複雑に感じられるかもしれません。
ステップ3:DAXメジャーを作成
データモデル内ではDAXメジャーを作成できます。Power Pivotの数式バーで直接入力するか、「計算」オプションから作成します。
- Power Pivotタブ → 計算グループ → メジャー → 新しいメジャーを選択します。
- メジャー名と数式を入力します。
- OKをクリックします。

Total Sales = SUM(Sales[SalesAmount]) Total Cost = SUM(Sales[Cost]) Profit = [Total Sales] - [Total Cost] Profit Margin % = DIVIDE([Profit], [Total Sales]) Average Order Value = DIVIDE([Total Sales], DISTINCTCOUNT(Sales[OrderID]))
- Power Pivotウィンドウで数式と結果をプレビュー確認できます。

Power BIの場合: DAXメジャーの動作はまったく同じです。日付テーブルをDate列に関連付けておけば、タイムインテリジェンス関数もすぐに活用できます。
ステップ4:ピボットテーブル/グラフでレポート層を構築
- データモデルに接続したピボットテーブルを挿入します。
- 挿入タブ → ピボットテーブル → データモデルを選択。
- 配置先を既存のワークシートまたは新しいワークシートから選択。

- ピボットテーブルが新しいシートに作成されます。

注意: 異なるビジュアルを作成するには、それぞれ個別のピボットテーブルが必要です。1つのピボットテーブルで複数の異なるビジュアルを賄うことはできないため、ここは時間のかかる作業になります。
ビジュアルの作成方法
KPIカード:
- ピボットテーブル フィールドから:
- メジャーを値エリアにドラッグします。
- フォントサイズを大きくして書式設定し、総計/小計を非表示にします。

インタラクティブなグラフの作成:
- データモデルから別のピボットテーブルを作成します。
- 月別売上:
- Dateを行エリアへドラッグ。
- SalesAmountを値エリアへドラッグ。
- ピボットテーブルを選択します。
- ピボットテーブル分析タブ → ピボットグラフ → 折れ線グラフを選択します。
- OKをクリックします。

- Date階層を使えば、ドリルダウン操作も可能なグラフになります。

- カテゴリ別/地域別/チャネル別売上: 集合縦棒のピボットグラフを使用。
- Categoryを行エリアへドラッグ。
- SalesAmountを値エリアへドラッグ。

- 都道府県別/州別売上: 円グラフのピボットグラフを使用。
- State/Provinceを行エリアへドラッグ。
- SalesAmountを値エリアへドラッグ。
- マップ: 静的データからマップグラフを作成する必要があります。
- CountryとそのSalesAmountをグループ化し、Excelの塗りつぶしマップグラフを使用します。

Power BIの場合: Power BIはインタラクティブ性を備えた次世代のビジュアルを提供します。同じコアビジュアルに加え、すっきりとしたレイアウトのグローバルスライサーも利用可能。しきい値に連動した信号機アイコン付きのKPIも、複雑な条件付き書式なしで組み込めます。
Excelが成功した点:
- より細かいグラフ書式設定のコントロールが可能
- テキストや注釈の表現力が高い
- 組み合わせグラフによるカスタムグラフタイプの作成
- スパークライン機能をネイティブで搭載
Excelが失敗した点:
- ネイティブのマップビジュアルがない
- インタラクティブなビジュアルの種類が限定的
- フィルターと連動する自動凡例がない
- サイズや位置の手動調整が必要
- レスポンシブデザインに対応していない
ステップ5:インタラクティブ性の実装
- スライサー(年度、カテゴリ、地域)とタイムライン(日付)を追加します。
- ピボットテーブル分析タブ → スライサーの挿入/タイムラインの挿入を選択します。

- すべてのピボットテーブル間でスライサーを同期させます。
- スライサータブ → レポート接続を選択。
- またはスライサーを右クリック → レポート接続を選択。
- すべてのピボットテーブルを選択してOKをクリックします。

Power BIの場合: 任意のビジュアルをクリックすると、他のすべてのビジュアルが自動的にフィルタリングされます。また、書式設定オプションを備えた独立したスライサーも提供されます。
Excelの場合: スライサーは基本的なフィルタリングには十分機能します。複数のスライサーで複数のピボットテーブルを制御でき、レポート接続によって他のピボットテーブルとの連携も可能です。しかし、ビジュアル間のクロスフィルタリング(グラフをクリックしても他が絞り込まれない)はできず、ドリルスルー機能も限定的。ブックマークやビュー状態の保存にも対応していません。
ステップ6:すべてのビジュアルを配置してレポートを完成させる
Power BIでは、レポートページ上ですべてのビジュアルを作成し、後から戦略的な流れを意識して並べ替えるだけです。一方Excelでは、複数のピボットテーブル、スライサー、グラフを作成したため、これらを1枚または複数のシートにコピーして整理する必要があります。
- ビジュアルを選択します。
- 右クリック → コピーを選択します。
- レポートシート内の配置場所を選択 → 貼り付けを実行します。
- Power BIの見た目に近づけるよう、すべてのビジュアルを書式設定します。
- Excelには豊富な書式設定オプションが用意されています。

- スライサーを選択して、インタラクティブ性を試してみましょう。

なお、ピボットテーブルが多数あるとパフォーマンスが低下することに注意してください。読み込み時間は大幅に増加します。
意外とうまくいったExcelの強み
- データインポート: Power QueryはPower BIとほぼ同等の操作性。
- モデリングとDAX: スタースキーマ、タイムインテリジェンス、DAXメジャーはPower BIと同じ感覚で使える。
- コアビジュアル: 折れ線、棒、テーブル、KPI風カード、さらには簡易的なマップまで堅実に再現可能。
- 詳細調査: ピボットセルをダブルクリックして「詳細の表示」(行レベルのドリルスルー)が使えるのは便利。専用の詳細シートを用意しておけば整然と管理できる。
- パフォーマンス(適度な規模なら): 部門レベルの典型的なデータセットであれば、データモデルは十分高速に動作する。
Excelが及ばなかった点(そしてそれが重要である理由)
- グラフ間のクロスハイライト:
- Power BIでは、あるビジュアルの棒グラフをクリックすると、他のビジュアルがクロスフィルター・クロスハイライトされる。
- Excelのスライサーは接続に基づいてフィルタリングするが、グラフ同士が動的にハイライトし合うことはない。
- ページレベルのドリルスルーとツールチップ:
- Power BIのドリルスルーページやレポートページツールチップは、ガイド付きの分析体験を提供する。
- Excelにはこうした機能はない。詳細シートへのハイパーリンクやわかりやすいスライサーラベルで代用できるが、やはり手動操作になる。
- 動的フィールドパラメーター(軸・メジャーの切り替え):
- Power BIのフィールドパラメーターは非常に快適。
- Excelでは非接続テーブル+SELECTEDVALUE+SWITCHで模倣できるが、煩雑でエンドユーザーにとって保守が難しい。
- DirectQuery、コンポジットモデル、増分更新:
- Power BIは全データをインポートせずに大型バックエンドへクエリでき、複数ソースの統合や増分更新も可能。
- Excelのデータモデルはインポート専用で、更新は全体一括方式になる。
- モバイル対応、ブックマーク、ナラティブ:
- Power BIのブックマークによるストーリーテリング、選択ウィンドウの活用術、モバイルレイアウトはExcelでは再現できない。
- Excelで単純なナビゲーション以上のことを行うには、VBAやハイパーリンクが必要になる。
クイック判断ガイド
Excelを選ぶべきケース:
- 小規模チームがOneDrive/SharePoint上でレポート共有するような分析にはExcelが向いています。ただしアプリ化やモバイル表示の代替にはなりません。
- ビジュアルと併せて柔軟で高度な計算(what-ifセル、LAMBDA/LET関数など)が必要な場合。
Power BIを選ぶべきケース:
- 広範囲への共有、定期的な自動更新、対象者ごとのアクセス制御が必要なら、Power BI Serviceが明確な勝者です。
- クロスハイライト、ドリルスルー、ツールチップ、ブックマーク、モバイルレイアウトを備え、アプリ配布やメトリックの利用に関するガバナンスも実現できます。
まとめ
Excelは素晴らしいツールであり、初級者から上級者まで幅広いニーズに応えてくれます。典型的なPower BIレポートの大部分、特にETL、スタースキーマ、DAX、コアビジュアルについては、Excelでも再現・ミラーリングが可能です。一方で、インタラクティブなストーリーテリング、ガバナンスされた共有、エンタープライズ規模のモデルや更新体制の面では力不足です。ユーザーやステークホルダーがExcel環境にいて、スコープが限定されているのであれば、Excelは十分に信頼できるレポーティング基盤となります。しかし、クリック操作で進むナラティブ、安全な配布、大規模なライブ接続が必要であれば、Power BIを選択しましょう。
無料の高度なExcel演習問題と解答をもらう!
-
ExcelのデータクレンジングをCopilotで劇的に効率化:ワンクリックで解決できる7つのよくある問題
データが乱雑になる原因は、大きなミスひとつであることはまれです。実際には、表記の揺れる氏名、形式の混在した日付、余分な空白、重複行、列にまたがって不自然に分割されたテキストなど、小さな問題の積み重ねがほとんどです。Microsoft 365 Copilotを活用すれば、手作業での数式入力や「検索と置換」、Power Queryよりもはるかに速くデータクレンジングを行えます。 Excelには主に2つのアプローチがあります。ひとつは「データのクリーンアップ(Clean Data)」機能。余分な空白、大文字小文字の不統一、数値形式の問題など、よくある課題に対してAIがワンクリックで修正案を提示し
-
Outlookでメールの秘密度を「通常」「個人用」「プライベート」「機密」に設定する方法
Microsoft Outlookでは、メッセージに秘密度(Sensitivity)レベルを設定できます。これにより、受信者は送信者の意図を把握しやすくなり、メールを適切に扱ってもらうよう促すことが可能です。送信メールには「通常」「個人用」「プライベート」「機密」のいずれかを設定できます。 Outlookにおける「個人用」「プライベート」「機密」の違いとは? Outlookで設定できる各秘密度レベルの違いは以下のとおりです。 通常:既定の標準モードです。特別な指定はありません。 個人用:メッセージが個人的な内容であることを示します。受信者がメッセージを開くと、情報バーに「このメッセージは個