Power Automate Desktop(PAD)を活用して、ファイルやフォルダのバックアップを取りたいと考えたことがある方も多いのではないでしょうか。
コピー&ペーストするだけの作業なので、RPAを活用すれば簡単に自動化できるのでは?と思われがちです。
しかし、実際にはPADを使ってフォルダごとコピーするのは、意外と難しいのです。
本記事では、その理由について詳しく解説していきます。
単純なファイルコピーは可能
ファイル単体のコピーであれば、「ファイルのコピー」アクションを使用することで問題なく実行できます。
また、フォルダ単体のコピーも「フォルダのコピー」アクションで対応可能です。
そのため、1つのフォルダ内に格納されている複数のファイルをコピーすることは比較的簡単です。
基本的な方法
-
フォルダー内のファイルを取得
-
対象フォルダを指定し、変数
Files
に格納します。
-
-
For each アクションを追加
-
Files
内のファイルを1つずつ処理するためのループを作成します。
-
-
ファイルのコピーアクションを設定
-
CurrentItem
をコピーするように設定します。
-
これで、フォルダ内の「ファイルをすべてコピー」する動作は完了です。
この方法では、RPAが1アクションごとに動作するため、ループを使って1つずつファイルをコピーしていきます。
▼サブフォルダまで含めた「ファイルのみコピー」の方法は以下の記事で紹介しています。
しかし、この手法には大きな問題があります。
フォルダごとコピーするのが難しい理由
上述の方法では、フォルダ内のファイルはコピーできますが、サブフォルダの構造までは保持できません。
その理由は、For each アクションで回す対象が「ファイルのみ」であり、フォルダが対象にならないためです。
フォルダ構造を維持したコピーが難しい原因
-
フォルダとファイルのループ回数が異なる
-
フォルダとファイルを同じループで処理することができないため、処理を分ける必要があります。
-
-
サブフォルダ内の再帰的な処理が必要
-
一度に全てのフォルダとファイルを処理することができず、ネストしたループ(一度ループを抜けるルール)を作成しなければなりません。
-
-
変数の管理が煩雑
-
どのフォルダ内のどのファイルを処理しているのかを管理する必要があり、スクリプトの構造が複雑化します。
-
正直、手作業でコピーしたほうが早いのでは?と思うほど大変な作業になります。
結論:PAD以外の選択肢も視野に入れよう
もし単にファイルのバックアップを取りたいのであれば、PAD以外の方法も検討するべきです。
-
Google Apps Script(GAS)を活用する
-
Google Drive APIを使用すれば、フォルダ構造を維持したままファイルをコピーできます。
-
-
クラウドストレージのバックアップ機能を活用する
-
Google DriveやOneDriveには、バックアップ機能が標準搭載されています。
-
どうしてもPADでフォルダごとコピーを自動化したい場合は、「フォルダ構造を再現するループ」を組む必要があります。しかし、これは高度なスクリプト作成が必要となり、実装の難易度が非常に高くなります。
そのため、PADを使ったフォルダコピーにこだわらず、他の手段も検討することをおすすめします。
2025.03.26追記 以下の方法でコピー可能でした!環境により変化するかもしれませんが試してみてください。
▼ 役に立ったらブックマークお願いします!
![]() |
はじめてのPower Automate Desktop-無料&ノーコードRPAではじめる業務自動化 [ 株式会社ASAHI Accounting Robot研究所 ] 価格:2508円 |
![]() |
図解でわかるRPA いちばん最初に読む本 [ 神谷 俊彦 ] 価格:1760円 |