特定の拡張子を持つファイルをSharePointでバックアップする
解決できる課題
複数のファイルをバックアップする時、下記のようなことはありませんか? ・Power Automateのアクションで一つずつファイルを指定している ・同じ拡張子のファイルはまとめて対象にしたい ・csvファイルは一括バックアップする このレシピを使えば、共通したファイルを一括でバックアップできます。
完成イメージ

必要なもの
SharePoint コネクタ
データ操作 コネクタ
作り方
バックアップする時、対象が一つであれば問題ないですが、複数ある時はまとめて行うのがスマートです。
サーバーなどでは正規表現を用い、*.csvといったように拡張子がcsvのファイルをまとめて対象にできます。
Power Automateでは、正規表現を使えないため、フィルタリングする工程が必要です。
※基本的なバックアップフローはSharePointファイルの定期バックアップをご参考ください
※バックアップの世代管理は定期バックアップしたSharePointのファイルを世代管理するをご参考ください
- 1. トリガーの設定
定期実行であればスケジュール、任意のタイミングであればインスタントフローを使います。
このステップは省略します。
※SharePointファイルの定期バックアップを参考
- 2. アクション「フォルダーの一覧」を設定
対象のファイルをフィルタリングするため、まずはファイル全体を取得します。
[サイトのアドレス]は、ファイルのあるサイトを設定します。
[ファイル識別子]は、ファイルのあるフォルダを設定します。

- 3. アクション「アレイのフィルター処理」を設定
ステップ2で取得したファイル一覧を配列にし、フィルタリングします。
[From]は「本文」を設定します。
[Filter Query]は「Name」が「.csv」の「末尾」とします。
※これはファイル名の拡張子が.csvであることと同じです

- 4. アクション「ファイル メタデータの取得」を設定
[サイトのアドレス]は、ステップ2と同じものにします。
[ファイル識別子]は、アレイのフィルター処理の「Body Id」にします。
なお、[ファイル識別子]を設定後、自動的にForeachのアクションが生成されます。

- 5. アクション「ファイル コンテンツの取得」を設定
[サイトのアドレス]はステップ4と同じものにし、[ファイル識別子]は「body/Id」にします。

- 6. アクション「ファイルの作成」を設定
[サイトのアドレス]はステップ5と同じものにします。
[フォルダーのパス]はバックアップ先で、このレシピでは「/Shared Documents/検証用フォルダ/csv用」にします。
※SharePointのドキュメントライブラリはShared Documentsです
[ファイル名]は「backup-」を接頭に付け、「body/Name」を使用します。
[ファイルコンテンツ]は「ファイルコンテンツ」にします。

- 7. 動作確認
test用のファイルがExcelとcsvの2つあります。
今回は、csvファイルだけをcsv用のフォルダへバックアップします。

フローを実行後、test.csvだけがバックアップされ、csv用のフォルダにはbackup-test.csvが生成されます。


