Excelのボタン一つでPower BIとPower Automateを起動する方法【初心者向け完全ガイド】

Excelは単なる表計算ツールにとどまらない、非常に強力なプラットフォームです。Power AutomateとPower BIを組み合わせることで、Excelを「ワークフローの起動ボタン」として活用できるようになります。ボタンをクリックするだけで、レポートの更新、メール送信、SharePointリストの更新、承認フローの起動などが可能になります。
このチュートリアルでは、ExcelのボタンからPower BIやPower Automateのアクションをトリガーする方法を、手順を追って詳しく解説します。
ExcelからPower BIやPower Automateを起動するメリット
- スプレッドシートから直接、繰り返し作業を自動化できる
- 必要なタイミングでワンクリックによりPower BIダッシュボードを更新できる
- ExcelのデータをTeams・Outlook・SharePointへ即座に送信できる
- Excelを離れることなく承認ワークフローを起動できる
- Excelをワークフローボタン付きの軽量「アプリ」に変えられる
事前に必要なもの(前提条件)
- Office Scriptsを使用するための、Excel for the webを含むMicrosoft 365アカウント
- Power Automateへのアクセス権(Microsoft 365に含まれています)
- Power BI Service(データセットの共有ニーズに応じて無料版またはPro版)
方法1:Office Scriptsを使ったExcelオンラインのボタンで起動する(標準版)
この方法は、Power Automateの標準版で動作します。Premiumライセンスは不要です。
ステップ1:ExcelでOffice Scriptを作成する
- ブックをExcel for the webで開きます。
- [自動化]タブ >> [新しいスクリプト]を選択します。
- 既存のスクリプトを以下のコードに置き換えます。
function main(workbook: ExcelScript.Workbook) {
console.log("Excel button clicked! Triggering Power Automate...");
}
- スクリプトをTriggerFlowという名前で保存します。

ステップ2:Excelにボタンを追加する
- コード エディターからボタンを追加できます。
- [その他のオプション(…)]をクリック >> [ブックに追加]を選択します。

これで、このボタンをクリックするとスクリプトが実行されるようになります。
ステップ3:スクリプトをPower Automateに接続する
- コード エディターからタスクを自動化します。
- [その他のオプション(…)]をクリック >> [タスクの自動化]を選択します。

- Power Automateのサイトに移動します。
- [続行]をクリックします。

- [スクリプトの実行] >> [パラメーター]で以下を設定します。
- 場所: Excel Online (Business)を選択
- ドキュメント ライブラリ: Documentsを選択
- ファイル: 対象のExcelファイルを選択
- スクリプト: TriggerFlowを選択

- [プラス(+)]アイコンをクリックしてアクションを追加します。
- Power BIを選択します。

- Power BIに関する複数のアクションが表示されます。
- [データセットの更新]を選択します。

- [パラメーター]で以下を設定します。
- ワークスペース: マイ ワークスペースを選択
- データセット: 更新対象のデータセットを選択

- フローには他のアクションも追加できます。
- Outlook → メールを送信する
- Teams → チャネルまたはチャットでメッセージを投稿する
- SharePoint → 新しいリスト項目を作成する

- 設定が完了したら、[保存]をクリックしてフローを保存します。

ステップ4:Power Automateフローをテストする
- [テスト]をクリックします。

- テスト方式として[手動]を選択します。
- [テスト]をクリックします。

- [フローの実行]をクリックします。

- テストが実行され、完了すると実行時間と成功通知が表示されます。

- Excel for the webに戻ります。
- TriggerFlowボタンをクリックします。
- スクリプトが実行 → Power Automateが起動 → アクションが実行、という流れで処理されます。
- 今回はPower BIデータセットの更新を追加しているため、レポートが即座に更新されます。

活用例:
- ワンクリックでPower BIダッシュボードを更新
- Excelシートから直接承認依頼を送信
- データ変更時にTeamsへステータスを投稿
- フィルター済みレポートを上司へメール送信
- 受注データをSharePointリストに記録
方法2:VBAボタンからPower Automateフローを起動する(Premium版)
ステップ1:Power Automateでフローを作成する
- Power Automateにアクセスします。
- [作成] >> [インスタント クラウド フロー]を選択します。

- フロー名を「Trigger from Excel Button」など任意の名前にします。
- トリガーとして[HTTP要求の受信時]を選択します。
- [作成]をクリックします。

- [プラス(+)]アイコンをクリックしてアクションを追加します。
- Power BIを選択 >> [データセットの更新]を選択します。

- [パラメーター]で以下を設定します。
- ワークスペースを選択
- データセットを選択

- さらに別のアクションを追加します。
- [メールの送信 (V2)]
- [パラメーター]で以下を入力します。
- 宛先を指定
- 件名を入力
- 本文を入力

- フローを保存します。
フローのURL(HTTPトリガー)を取得する:
- フローを保存すると、「HTTP要求の受信時」ステップに対して一意のURLが自動生成されます。
- このURLをコピーして、後ほどVBAコード内で使用します。

ステップ2:Excelにボタンを作成する
- Excel(デスクトップ版)を開きます。
- [開発]タブ >> [挿入] >> [ボタン(フォーム コントロール)]を選択します。
- シート上にボタンを描画します。

- ボタンを右クリック >> [マクロの登録]を選択します。

ステップ3:フローを呼び出すVBAコードを追加する
- 以下のVBAコードを貼り付けます(URLの部分は自分のフローのURLに置き換えてください)。
Sub TriggerFlow()
Dim objHTTP As Object
Dim URL As String
URL = "Insert URL from your Flow"
Set objHTTP = CreateObject("MSXML2.XMLHTTP")
objHTTP.Open "POST", URL, False
objHTTP.Send
MsgBox "Flow Triggered Successfully!"
End Sub

- 「Power Automateを起動」ボタンをクリックすると、Power Automateのフローが呼び出されます。
- フローが正常に起動すると、成功メッセージが表示されます。

まとめ
以上の方法を実践すれば、ライセンスが標準版でもPremium版でも、ExcelのボタンからPower BIやPower Automateのアクションを起動できます。Excel for the webのボタン、Office Scripts、そしてPower Automateの標準版だけで、Power BIデータセットの更新、メール送信、ワークフローの開始などをスプレッドシートから直接実行できます。組織にPremiumライセンスがあれば、VBA+HTTPトリガーやカスタムAPI連携といった、さらに高度な統合も実現可能です。ただし、標準版だけでも、Excelは日々の業務を効率化する強力なワークフローランチャーとして十分に機能します。
まずは小さなアクションから始めてみましょう。例えば、Power BIデータセットを更新するボタンを1つ作成してみてください。うまく動作することが確認できたら、その仕組みを承認フロー、メール通知、チームへの通知などへ拡張していけばOKです。
-
Excelのデータの入力規則がグレーアウトして使えないときの原因と解決策4選
Excelでデータの入力規則(Data Validation)を使おうとしたら、メニューがグレーアウトしていてクリックできない――そんな経験はありませんか?実はこのトラブルにはいくつかの典型的な原因があり、それぞれに簡単な解決策があります。この記事では、入力規則がグレーアウトする4つの原因とその対処法を、わかりやすい手順で解説します。さらに、「ドロップダウンリストが表示されない」というよくある問題の直し方もご紹介しますので、ぜひ最後までお読みください。 データの入力規則がグレーアウトする4つの原因と解決策 ここでは、Windows環境を前提に、入力規則がグレーアウトして使用できなくなる原因と
-
Microsoft ExcelでISNONTEXT関数を使う方法|基本的な使い方をわかりやすく解説
ISNONTEXT関数は、Microsoft Excelの情報関数の一つで、対象の値が文字列(テキスト)以外である場合にTRUEを返す関数です。ISNONTEXT関数の書式は ISNONTEXT(値) です。構文の詳細は以下の通りです。 値:テスト(判定)したい値を指定します。 ExcelにおけるISNONTEXT関数とは? ISNONTEXT関数は、TRUEまたはFALSEという論理値を返します。数値、日付、時刻、空白セルなど、文字列以外のあらゆる値に対してTRUEを返すのが特徴です。 ExcelでISNONTEXT関数を使う手順 ExcelでISNONTEXT関数を使用するには、以下の