Power Automate 「フォルダー内のファイルのリスト(Google Drive)」アクション

2020年9月2日

「フォルダー内のファイルのリスト(Google Drive)」はGoogle Driveの任意のフォルダに

保存されているファイル(フォルダーも含まれる)の一覧を取得するアクションです。

この記事では、その使い方を紹介します。

前提条件

  • 「Microsoft 365 Business」の「Standard」か「Premium」の契約が必要です。
  • Googleアカウントを開設していてGoogle Driveを利用している必要があります。

利用方法

フローにステップを追加する際に「Google Drive」コネクタを選択します。

「標準」の少し下の方にあります。

「Google Drive」コネクタを選択

「アクション」より「フォルダー内のファイルのリスト」を選択します。

「アクション」より「フォルダー内のファイルのリスト」を選択

「フォルダー内のファイルのリスト」ステップが追加されるので対象のフォルダを設定します。

ここはフォルダーのピッカーで指定します。

「フォルダー内のファイルのリスト」ステップが追加されるので対象のフォルダを設定
項目必須説明
フォルダー ID右のディレクトリアイコンのピッカーでファイルを選択。
フォルダーパスに見えますが、表示だけで中身はIDです。
指定フォルダーを削除してから、同名フォルダーを作成しても別として扱われてしまいます。(再指定が必要)

次に新しいステップに「コントロール」コネクタを指定します。

「コントロール」コネクタを指定

そして「Apply to each」アクションを指定します。

「Apply to each」アクションを指定

「以前の手順から出力を選択」に動的なコンテンツの「本文」を指定します。

これにより「Apply to each」の中に指定したアクションが

フォルダ内に格納されているファイルとディレクトリの全ての分だけ繰り返されます。

(繰り返されるたびに異なるファイルを対象とする)

動的なコンテンツ

繰り返しの対象のファイルに対して代表的な動的コンテンツは以下の通りです。

作成したファイルやフォルダーの付加情報が取得可能です。

項目変数の種類内容
Id文字列ファイル・フォルダーの識別子。
Name文字列ファイル名・フォルダー名
Path文字列フルパス。
そのままでは使いづらいので文字列操作が必要な場合が多いです。
MediaType文字列ファイルのMINEタイプ
LastModifiedBy文字列最終更新者のユーザ名
LastModified文字列(日時)最終更新日時
Size整数ファイルのバイト数
Google Driveファイルのメタデータ一覧

取得できるのは付加情報のみです。

ファイルの内容であるファイルコンテンツが必要な場合はIdを利用して

IDによるファイルコンテンツの取得」アクションで取得します。

利用例:フォルダーの中のファイルを全て削除

例えばフォルダー内のファイルを全て削除する場合、このようにします。

なおフォルダーを削除するアクションがないため、削除できるのはファイルのみです。

それにはまず「Apply to each」の中で「コントロール」より「条件」を選択します。

「Apply to each」の中で「コントロール」より「条件」を選択

次に「条件」の左側に動的なコンテンツの「IsFolder」、右側に「true」を指定します。

そして「いいえの場合」の中に「ファイルの削除」アクションを追加し、

ファイルに動的なコンテンツの「Id」を指定します。

これによりフォルダの中身を全て削除するフローになります。

更に下位の階層は対象外のため、それも想定する場合は「はいの場合」に

更に「フォルダー内のファイルのリスト」を想定する階層分、追加する必要があります。

利用例:フォルダの内容をメール送信

フォルダの内容を列挙してメールで送信するフローを紹介します。

(メールでなくファイル保存などでも応用可能です)

それにはまずトリガーの直後に「変数」コネクタを選択します。

トリガーの直後に「変数」コネクタ

「変数を初期化する」アクションを選択します。

「変数を初期化する」アクションを選択

「名前」に任意の変数名、「種類」に文字列を指定します。

「名前」に任意の変数名、「種類」に文字列を指定

Apply to each」の中で「変数」より「文字列変数に追加」アクションを追加します。

「Apply to each」の中で「変数」より「文字列変数に追加」アクションを追加

名前に先ほど初期化した任意の変数名を指定し、

値にファイルの情報の動的コンテンツを指定します。

そのまま繋げると読みづらいので記号などで整形します。

改行を変数化していますが、値の中で改行しても有効です)

名前に先ほど初期化した任意の変数名を指定し、値にファイルの情報の動的コンテンツを指定

これをOutlookGmailの本文に指定すればファイルの情報一覧が送信されます。

OutlookやGmalの本文に指定すればファイルの情報一覧が送信
メールの送信結果
メールの送信結果

変数をメール本文でなくファイルコンテンツに指定すれば、

テキストファイル保存という形で応用可能です。

(改行する場合、改行コードや改行タグに気を付ける必要があります)

関連記事

Power Automate 「Google Drive」の記事一覧

Power Automate アクションの使い方の記事一覧