\ 最大10%ポイントアップ! /

Power Automateで取得した情報をExcelに書き出す方法

PAで取得した情報をExcelに書き出す

【当サイトはプロモーションを含んでいます】

目次

この記事の内容

この記事は3記事による連載「Power AutomateでOutlookのイベント情報をExcelに書き出す方法」の最後の記事になります。前回の記事はコチラ↓

じょじお

この記事では、Power Automateで取得したデータをExcelに書き出すアクションについて解説します。

Power AutomateでExcelに書き出す方法(「表に行を追加」アクションを使う)

Excelに書き出すにはいくつか方法がありますが、この記事では、Excelコネクタの「表に行を追加」アクションを使う方法について解説します。

表に行を追加」アクション(「テーブルに行を追加する」アクションに名称が変更されました。)

(事前準備)「テーブル」化したExcelを用意する

STEP

「表に行を追加」アクションを使うためのExcelファイルの条件

Excelファイルを用意する前に「表に行を追加」アクションを使うためには下記の条件があることに注意してください。

「表に行を追加」アクションを使う条件

  • ExcelはOneDrive か Sharepoint Onlineに保存されている。
  • Excel内のデータ領域(表)がテーブル化されていること。
ぽこがみさま

Power Automateで扱うExcelはテーブル化されていないといけません。

STEP

Excelの完成図の確認

用意するExcelファイル
Excelのサンプルのテーブル

▲今回はヘッダー(見出し)だけ作った空っぽの表を作ってテーブル化しました。作成方法は次の項で紹介します。

STEP

Excelファイルを新規作成する

Excelの新規作成

こちら(Office365)からExcelを新規作成します。

STEP

Excelの表をテーブル化する

テーブル化の方法1

▲1行目に見出しの名前を入力したら、テーブル化するセル範囲のどこかを選択した状態で、「挿入」タブ→「テーブル

テーブル化する方法

▲「先頭行をテーブルの見出しとして使用する」にチェックを入れます。

セル色が変化しオートフィルタが適用されたらテーブル化の成功です。一番上の図のように見出し行と空っぽのデータ列の2行だけのテーブルが出来ました。

STEP

Excelの保存

Excelが完成したらファイルを保存しましょう。保存した場所はPower Automateフローを作成するときに必要になりますので覚えておいてください。ちなみに「新しい空白のブック」から作成して特に保存場所を変更しなければOneDriveのトップフォルダの中に保存されているかと思います。

Power Automateのフローを作成する

フローを作る前におすすめの設定

Power Automateでフローを作成する前にPower Automateのおすすめの設定があります。特に動的コンテンツ(動的な値)を利用した関数式の作成がとっても楽になります。下記の記事で詳細を紹介していますので興味のある方はご覧ください。

Power Automate「表に行を追加」アクションを追加する

STEP
前回の記事で作成したフローに新しいアクションを追加します。
新しいアクションを追加

前回の記事で作成したフローにアクションを追加します。Apply to eachの中に追加します。

STEP
「Excel Online」コネクタをクリックします。
Excelの表に行を追加アクション

▲Excel Onlineコネクタを選択します。

STEP
「表に行を追加」アクションをクリックして追加します。
表に行を追加アクション

▲ 「表に行を追加」アクションをクリックします。

STEP
「表に行を追加」アクションのパラメータを入力します。
Excel表に行を追加アクション

▲必要なパラメータを入力します。

  • 場所
    • Excelを保存したOneDriveかSharepointサイト
  • ドキュメントライブラリ
    • Excelを保存したOneDriveかSharepointサイトのドキュメントライブラリ名
  • ファイル
    • Excelファイル名
  • テーブル
    • テーブル名(名前を変更していなければデフォルトテーブル名は「テーブル1」です。)
テーブルの列の設定

▲テーブル名まで入力すると、テーブルに設定された列名を図のように読み込んでくれます。

じょじお

テーブルの列名とリンクするのでテーブルによって図の赤枠の項目名や項目数は変わります。

今回は下記のように設定しました。

  • name列
    • (動的なコンテンツ)「イベントの取得v4」の中の「件名」
  • start/dateTime列
    • formatDateTime(body(‘タイム_ゾーンの変換(イベント開始時間の変換)’),’g’)
  • end/dateTime列
    • formatDateTime(body(‘タイム_ゾーンの変換(イベント終了時間の変換)’),’g’)
  • かかった時間
    • (空白)

start/dateTime列、end/dateTime列には、「タイムゾーンの変換」で変換した値をformatDateTime関数で書式を変更してからExcelに渡しています。そのままExcelに書き出してもExcelで日付として認識されず、Excel内で計算できなかったためです。

formatDateTime関数の構文

<基本構文>
formatDateTime(変換する時間 , 書式指定子)

<例>
formatDateTime(body(‘タイム_ゾーンの変換’),’g’)

formatDateTime関数の使い方はこちらの公式ドキュメントを確認してください。書式指定子についてはこちらの公式ドキュメントを確認してください。

formatDateTime関数の使い方

STEP
「表に行を追加」アクションの「動的なコンテンツを追加」をクリックします。

▲「動的なコンテンツ」をクリック→「式」タブをクリック→「もっと見る」をクリックします。

STEP
関数一覧から「formatDateTime関数」をクリックして追加します。
formatDateTime関数をクリックします。

▲formatDateTime関数をクリックします。

formatDateTime関数が自動入力される

▲formatDateTime関数が自動入力されます。

STEP
「formatDateTime関数」のカッコの中に動的コンテンツを追加します。(第1引数)
formatDateTime関数の使い方2

▲カッコの中に動的なコンテンツの値を入れます。

formatDateTime関数の使い方3

▲「動的なコンテンツ」の値が関数の中に自動入力されました。

STEP
「formatDateTime関数」に書式を指定します。(第2引数)
formatDateTime関数の使い方4

▲関数の第二引数を手入力で追記してOKボタンを押します。

先で解説しましたように第二引数は書式を指定します。書式には「書式指定子」か直接’yyyy-MM-dd’のように記述することもできます。図では書式指定子の’g’を用いました。gは「一般の日付と時刻のパターン (短い形式の時刻)」を表現します。gを使うと下記の例のように出力されます。gは汎用的に使えるので覚えておくと良いと思います。

例:2009/6/15 13:45

STEP
「formatDateTime関数」が正しく入力できたことを確認します。
formatDateTime関数の使い方5

▲関数として認識されるとピンクのカード表示になります。

ピンクのカード表示にならずにグレーのカードになっている場合は、関数の文法が間違っている可能性があります上述の基本構文を確認し誤りが無いか確認してください。

STEP
「表に行を追加」アクションのその他のパラメータを入力します。
Excel表に行を挿入完成図

▲あとはイベントの終了時間の方も同じ要領で入力してフローがすべて完成です。

フローの完成

フロー全体図
じょじお

フローが完成しました。

フローの実行

じょじお

フローが完成したので実行してExcelを確認してみましょう。下図のようにExcelに出力できたのではないでしょうか。

フロー実行結果のExcel

ちなみに説明を忘れていましたが、フロー実行前にD列に「=C2-B2」という式を入れておくと、図のようにD列全部で時間の計算してくれます。

Power Automate・Microsoft 365 関連記事

テーブル化していないExcelファイルを操作するには?

テーブル化していないExcelファイルや、Excelコネクタに無い複雑なExcel操作を行うには、Excel Online版のマクロ言語であるOffice Scripts(Officeスクリプト)をPower Automateと連携して使う方法があります。下記の記事を参考になさってください。

Office ScriptによるExcel on the web 開発入門

『Office ScriptによるExcel on the web 開発入門』
  • オススメ度:★★★★★
  • Kindle版:あり
  • 対象者:Office Scriptをこれから習得したい方
  • Office Scriptを体系的に学ぶならおススメ!
デザインも良く読みやすいのでおススメです。

Office Scriptを体系的に学ぶにはこちらの書籍の購入をおススメします。現時点ではAmazonで購入できる唯一の日本語で書かれたOfficeスクリプト(Office Script)の書籍です。(2021年11月05日時点)そもそもOffice Scriptを解説している日本語のWebサイトやYouTubeは多くありませんので貴重な解説書です。

Office Scriptのベース言語であるTypeScriptの解説から始まるのでプログラム経験のない方でもこの1冊でOffice Scriptを始めることができるかと思います。セルやシートの操作方法はもちろん、Office Scriptの一番のメリットであるPower Automateとの連携の方法(変数の受け渡し等)も解説されていて一通り網羅されているかと思います。Kindleで読んでも文字サイズやレイアウトがキレイで読みやすいのもありがたかったです。

Office scriptsを習得すればExcelデータが多い会社や組織では自動化の可能性が広がります。Excel VBAではできなかったクラウド連携やトリガー起動による自動化をぜひ体感してください。

まとめ

じょじお

以上で、Power AutomateでExcelに書き出す方法についてご紹介しました。

ぽこがみさま

実務では、Excelのテーブルの機能である集計行を追加して、全てのイベントの時間の合算をしたりすると良さそうですね。

Power Automate学習教材

Power AutomateをKindleで学びたい方はコチラ

▲Kindleと紙媒体両方提供されています。デスクトップフロー、クラウドフロー両方の解説がある書籍です。解説の割合としてはデスクトップフロー7割・クラウドフロー3割程度の比率となっています。両者の概要をざっくり理解するのにオススメです。

Power Automate for Desktopの基本をしっかり学習するのにオススメです。この本の一番のメリットはデモWebシステム・デモ業務アプリを実際に使ってハンズオン形式で学習できる点です。本と同じシステム・アプリを使って学習できるので、本と自分の環境の違いによる「よく分からないエラー」で無駄に躓いて挫折してしまう可能性が低いです。この点でPower Automate for desktopの一冊目のテキストとしてオススメします。著者は日本屈指のRPAエンジニア集団である『ロボ研』さんです。

Power Automate クラウドフローの入門書です。初心者の方には図解も多く一番わかりやすいかと個人的に思っています。

Microsoft 365/ Power Automate / Power Platform / Google Apps Script…

Power Automateを動画で学びたい方はコチラ

▲Udemyで数少ないPower Automateクラウドフローを主題にした講座です。セール時は90%OFF(1200円~2000円弱)の価格になります頻繁にセールを実施しているので絶対にセール時に購入してくださいね。満足がいかなければ返金保証制度がありますので安心してご購入いただけます。

お役に立てたらシェアお願いします!
  • URLをコピーしました!
  • URLをコピーしました!
目次