PowerAutomateでSharepointのファイル名を変更したいということは結構あるのではないかと思います。
しかし、ファイル名変更専用のアクションは用意されていません。
少しとっつきにくいですが、「SharePointにHTTP要求を送信」のアクションを使用してファイル名を変更をしていきます。
フロー概要
ファイル名変更に必要な、ItemId、フォルダーのODataの種類を取得してから、
ファイル名変更を実行します。
JSONの解析は必ず必要なものではありませんが、このプロセスを入れておいた方が、前のプロセスの出力結果を設定しやすくなります。
フロー詳細
今回の例では、ドキュメントライブラリ「DocLIb_test」のサブフォルダ内にある、「Book.xlsx」を「aaabbbdde1.xlsx」に変更します。
パスによるファイルメタデータの取得
SharePointにHTTP要求を送信(ODataの種類取得用)
JSONの解析
このアクションの設定をするためには、「SharePointにHTTP要求を送信します」の出力結果が必要です。いったん、ここまで作成したフローを一度テスト実行してみます。
実行が終わったら、「SharepointにHTTP要求を送信します」をクリックして結果を確認します。
出力結果をコピーします
JSONの解析のアクションを追加して、
スキーマの設定
サンプルから生成ボタンを押して、「SharepointにHTTP要求を送信します」の出力結果でコピーした内容を貼り付けます。次に進みましょう。
SharePokintにHTTP要求を送信(ファイル名変更用)
いよいよファイル名変更のプロセスです。
以下の設定画面では、URIで指定したファイルの名前を「aaabbbdde1.xlsx」という名前に変更しています。
ボディの設定欄に変更後のファイル名が記載してあります。
ヘッダー
ボディ
以上で、フローとその設定は完了です。
後は、フローを実行してみてください。
ファイル名が変更されます。
補足
このフローでは、変更後名前のファイルが既に存在する場合は、処理が失敗してしまいます。
必要に応じて、変更後の名前のファイルが既にないか事前にチェックする等してファイル名が一意になるようにしてください。
終わりに
ファイル名変更の自動化は結構必要となることが多いのではないでしょうか?
例えば、任意のファイル名で提出されたエクセルファイルを受理した日付、種類などを付けた定型のファイル名に変更するな、使える技なので、是非お試しください。