Power Automate 「フォルダー内のファイルのリスト(OneDrive For Business)」アクション
「フォルダー内のファイルのリスト(OneDrive」はOneDriveの任意のフォルダに
保存されているファイル(フォルダーも含まれる)の一覧を取得するアクションです。
この記事では、その使い方を紹介します。
利用方法
フローにステップを追加する際に「OneDrive For Business」コネクタを選択します。
「アクション」より「フォルダー内のファイルのリスト」を選択します。
「フォルダー内のファイルのリスト」ステップが追加されるので対象のフォルダを設定します。
ここはフォルダーのピッカーで指定します。
ピッカーで指定した場合はフォルダパスに見えますが、表示だけで中身はIDです。
指定フォルダを削除してから、同名フォルダを作成しても別として扱われてしまいます。
(フォルダが存在しないエラーとなるので、フロー上で再指定が必要)
次に新しいステップに「コントロール」コネクタを指定します。
そして「Apply to each」アクションを指定します。
「以前の手順から出力を選択」に動的なコンテンツの「value」を指定します。
これにより「Apply to each」の中に指定したアクションが
フォルダ内に格納されているファイルとディレクトリの全ての分だけ繰り返されます。
(繰り返されるたびに異なるファイルを対象とする)
動的なコンテンツ
繰り返しの対象のファイルに対して使用する代表的な項目は以下の通りです。
取得できるのは付加情報のみです。
項目 | 変数の種類 | 内容 |
---|---|---|
ID | 文字列 | ファイル識別子。 |
名前 | 文字列 | ファイル名。 拡張子は式で抽出します。 |
パス | 文字列 | ファイルのフルパス。 そのままでは使いづらいので文字列操作が必要な場合が多いです。 |
メディアの種類 | 文字列 | ファイルのMINEタイプ |
最終更新者 | 文字列 | 最終更新者のユーザ名 |
最終更新時刻 | 文字列(日時) | 最終更新日時 |
サイズ | 整数 | ファイルのバイト数 |
取得できるのは付加情報のみです。
ファイルの内容であるファイルコンテンツが必要な場合はIdを利用して
「ファイルコンテンツの取得」アクションで取得します。
ファイルの内容であるファイルコンテンツを取得する場合は以下を利用します。
アクション・トリガー | 種類 | 動的なコンテンツ |
---|---|---|
新しいメールが届いたとき(Offce365 Outlook) | トリガー | 添付ファイル コンテンツ |
新しいメールが届いたとき(Gmail) | トリガー | 添付ファイル コンテンツ |
ファイルが作成されたとき(OneDrive For Business) | トリガー | ファイル コンテンツ |
ファイルが変更されたとき(OneDrive For Busiess) | トリガー | ファイル コンテンツ |
ファイル コンテンツの取得(OneDrive For Business) | アクション | ファイル コンテンツ |
パスによるファイル メタデータの取得(OneDrive For Business) | アクション | ファイル コンテンツ |
ファイルの変換(OneDrive For Business) | アクション | ファイル コンテンツ |
IDによるファイルコンテンツの取得(GoogleDrive) | アクション | ファイル コンテンツ |
パスによるファイルコンテンツの取得(GoogleDrive) | アクション | ファイル コンテンツ |
フォルダー内にファイルが作成されたとき(SharePoint) | トリガー | ファイル コンテンツ |
フォルダー内でファイルが作成または変更されたとき(SharePoint) | トリガー | ファイル コンテンツ |
OneDriveやGoogleDriveなどサービスを跨いでも
ダウンロード可能なファイルであれば共通して利用可能です。
利用例:フォルダーの中のファイルを全て削除
例えばフォルダー内のファイルを全て削除する場合、このようにします。
なおフォルダーを削除するアクションがないため、削除できるのはファイルのみです。
それにはまず「Apply to each」の中で「コントロール」より「条件」を選択します。
次に「条件」の左側に動的なコンテンツの「フォルダーですか?」、右側に「true」を指定します。
そして「いいえの場合」の中に「ファイルの削除」アクションを追加し、
ファイルに動的なコンテンツの「ID」を指定します。
これによりフォルダの中身を全て削除するフローになります。
より下位の階層は対象外のため、それも想定する場合は「はいの場合」に
更に「フォルダー内のファイルのリスト」を想定する階層分、追加する必要があります。
利用例:フォルダの内容をメール送信
フォルダの内容を列挙してメールで送信するフローを紹介します。
(メールでなくファイル保存などでも応用可能です)
それにはまずトリガーの直後に「変数」コネクタを選択します。
「変数を初期化する」アクションを選択します。
「名前」に任意の変数名、「種類」に文字列を指定します。
「Apply to each」の中で「変数」より「文字列変数に追加」アクションを追加します
名前に先ほど初期化した任意の変数名を指定し、
値にファイルの情報の動的コンテンツを指定します。
そのまま繋げると読みづらいので記号などで整形します。
(改行を変数化していますが、値の中で改行しても有効です)
これをOutlookやGmailの本文に指定すればファイルの情報一覧が送信されます。
変数をメール本文でなくファイルコンテンツに指定すれば、
テキストファイル保存という形で応用可能です。
(改行する場合、改行コードや改行タグに気を付ける必要があります)
Power Automateを効率的に習得したい方へ
当サイトの情報を電子書籍用に読み易く整理したコンテンツを
買い切り950円またはKindle Unlimited (読み放題) で提供中です。
Word-A4サイズ:1500ページの情報量で
(実際のページ数はデバイスで変わります)
基本的な使い方から各トリガー/アクションの詳細な使い方、
頻出テクニック、実用例を紹介。(目次)
体系的に学びたい方は是非ご検討ください。
アップデートなどの更新事項があれば随時反映しています。(更新履歴)
なお購入後に最新版をダウンロードするには
Amazonへの問い合わせが必要です。