SANANEBLOG
Excel PR

OneDrive上のファイル名を一括で変更するフローの作成方法【Power Automate】

記事内に商品プロモーションを含む場合があります

はじめに

OneDrive上にある大量のファイル名を一括で変更したいと思ったことはないでしょうか?

今回の記事では、Power Automateを活用して、OneDrive上のファイル名をエクセルで一元管理し、簡単に名前を変更する手順を紹介します。

この自動化処理の導入により、特に大量のファイルを扱う際の手間を大幅に削減することができます。今回の記事が作業効率が大幅に向上する一助になれば幸いです。

メリット
  1. ファイル名の一括変更による時間の節約
  2. エクセルを使用した直感的なファイル管理
  3. PowerAutomateの活用方法を学び、他の業務プロセスも自動化するヒントを得る

作成方法

Excelテーブル作成

SANANE

まずは、変更前のファイルのリストと変更後のファイル名を管理するためのExcel上のテーブルの作成を行います。

まず、事前にExcelのWeb版にサインインします。

各セルに以下の値を入力して、

A1セル:ID

B1セル:変更前ファイル名

C1セル:変更後ファイル名

A1セルからC3セルを選択した状態で、[挿入]タブから[テーブル]をクリックし、[先頭行をテーブルの見出しとして設定する]にチェックを入れて[OK]をクリックすることでテーブルを作成できます。

ファイルの一覧取得処理の作成

SANANE

続いて、Power Automateを使用して、指定したOneDrive内のフォルダにあるファイル一覧を出力する自動化処理を作成します。

Power Automateにアクセスします。

右メニューの[作成]をクリックし、[インスタント クラウド フロー]をクリックします。

[フロー名]には任意のフロー名を入力し、[フローを手動でトリガーする]をクリックして[作成]をクリックします。

アクション:OneDrive フォルダー内のファイルのリスト

次のアクションとして、OneDriveもしくはOneDrive for Businessのアクションである[フォルダー内のファイルのリスト]を選択します。

[*フォルダー]には、名前を変更したいファイルが格納されているOneDrive上のフォルダを指定します。

アクション:Excel Online テーブルの取得

次のアクションは、Excel Online のアクションである、[テーブルの取得]を選択してください。

それぞれの必須入力項目である[*場所][*ドキュメントライブラリ][*ファイル]には先ほど作成したExcelファイルの場所を選択してください。

条件:Apply to each

続いて、[新しいステップ]をクリックすると表示される[条件]をクリックし、表示される[それぞれに適用する]をクリックします。

[*以前の手順から出力を選択]では、動的なコンテンツのフォルダー内のファイルのリストにて取得した[value]を入力します。

アクション:Excel Online 表に行を追加

[Apply to each]内で新しいステップを作成し、ここではExcel Onlineのアクションである[表に行を追加]を選択します。

必須入力項目である[*場所][*ドキュメントライブラリ][*ファイル][テーブル]には先ほど作成したExcelファイル内のテーブルの場所を選択してください。

また、[ID]と[名前]と書かれた入力箇所には以下を入力します。いずれも入力箇所をクリックした際に表示されるモーダルから選択してください。

ID

フォルダー内のファイルのリストにて取得した[ID]

変更前ファイル名

フォルダー内のファイルのリストにて取得した[名前]

作成したら、保存しておきます。

ファイル名一括変更処理の作成

SANANE

最後に、Power Automateでもう一つ新しいフローを作成して、ファイル名を変更する処理を作成します。

前項の「ファイルの一覧取得処理の作成」のときと同様に、右メニューの[作成]をクリックし、[インスタント クラウド フロー]をクリックします。

[フロー名]には任意のフロー名を入力し、[フローを手動でトリガーする]をクリックして[作成]をクリックします。

アクション:OneDrive フォルダー内のファイルのリスト

こちらも先程と同様にOneDriveもしくはOneDrive for Businessのアクションである[フォルダー内のファイルのリスト]を選択します。

[*フォルダー]には、同様に名前を変更したいファイルが格納されているOneDrive上のフォルダを指定します。

条件:Apply to each

こちらも先程と同様に、[新しいステップ]をクリックすると表示される[条件]をクリックし、表示される[それぞれに適用する]をクリックします。

[*以前の手順から出力を選択]では、動的なコンテンツのフォルダー内のファイルのリストにて取得した[value]を入力します。

アクション:Excel Online 行の取得

[Apply to each]内で新しいステップを作成し、ここではExcel Onlineのアクションである[行の取得]を選択します。

必須入力項目である[*場所][*ドキュメントライブラリ][*ファイル][テーブル]には先ほど作成したExcelファイル内のテーブルの場所を選択してください。

また、[*キー列]と[キー値]と書かれた入力箇所には以下を入力します。いずれも入力箇所をクリックした際に表示されるモーダルから選択してください。

キー列

プルダウンで表示される[ID]

変更前ファイル名

フォルダー内のファイルのリストにて取得した[ID]

コントロール:条件

[Apply to each]内で新しいステップを作成し、ここではコントロールの[条件]を選択します。

条件には以下を[または]で指定してください。

条件1
  1. (左空欄)[行の取得]で取得した[変更後ファイル名]
  2. (中央空欄)次の値に等しい
  3. (右空欄)空欄
条件2
  1. (左空欄)[行の取得]で取得した[変更後ファイル名]
  2. (中央空欄)次の値に等しい
  3. (右空欄)[行の取得]で取得した[変更前ファイル名]

今回の条件の指定によって、変更前と変更後のファイル名が同一であったり、変更後のファイル名が空欄であった場合に処理をスキップさせています。

各条件の指定

それぞれ「はい」と「いいえ」には各アクションを指定してください。

はいの場合

アクションの指定なし(スキップ)

いいえの場合

アクション名:OneDrive ファイルの移動または名前変更

*ファイル:[行の取得]で取得した[ID]

*対象ファイルのパス:/名前変更したファイルを保存したいフォルダ/[変更後ファイル名]

上書きする:はい

作成したら、保存で完成です。

利用方法

テストとして、OneDriveには以下のファイルを格納しておきます。

ファイル一覧取得のフローを実行します。

Excelファイルのテーブルにファイルの一覧が表示されます。

次に、変更したいファイル名には[変更後ファイル名]の列に変更後のファイル名を入力します。

拡張子も必ずつけておく必要があります。

ファイル名変更のフローを実行します。

ファイルの名前が変更されます。

利用上の注意点

変更後のファイル名には拡張子まで指定してください。

ファイル一覧を取得する際には一度Excelのテーブル上の行をすべて削除してから実行してください。

ファイル名の変換に失敗したファイルはOneDriveのゴミ箱に移動される場合があります。

Power Automateのおすすめ書籍

Microsoft Power Automate かんたん活用ガイド

デスクトップ版Power Automateの解説だけでなく、クラウド版Power Automateを解説してる書籍になります。GmailやGoogleカレンダー、DropboxやOneDriveなどのクラウドと連携して、各種Webサービスの操作を自動化する方法を解説しています。

まずは何か作ってみたい初心者の方におすすめです。

Power Automate自動化レシピ

中~上級者向けのクラウド版Power Automateの書籍となります。基礎から詳しく、また具体的なワークフローの例として、メール作業の自動化、ドキュメント作成、社内稟議フローの作成、勤怠管理システムの作成などが紹介されています。

はじめてのPower Automate Desktop

デスクトップ版であるPower Automate Desktopにも興味がある初心者の方にお勧めの本となります。実際の業務フローを例に、Power Automate Desktopの基本的な操作方法から、より高度な機能の活用方法までを丁寧に解説しています。