※この記事は、「Power Automate Desktop を使ってみよう」の続きです。
Microsoft Power Automate Desktop を扱い始めて日が浅いので、日々勉強です。
普段やっている場面で、何か活かせる使い方がないかと考えた結果、浮かんだのが PDFファイルの操作です。PDF ファイルをまとめたり(統合・結合したり)、PDF ファイルを分割したりする操作は、頻度は少ないですが、たまに起こっていたような気がします。
Power Automate Desktop では、PDFファイルを扱うことが出来ます。今回は、別々の PDF ファイルを統合(結合)して、一つの PDF ファイルを作りましょう。
※今回の PDF ファイル統合に際して、長野県の「新型コロナウイルス感染症対策 総合サイト」上でダウンロードが可能な PDF ファイルを使用いたしました。その理由は、PDF ファイル名の冒頭が、月日または年月日を表す数字から始まるもので、並べ替えの説明に適していたためです。以降の説明で、PDFの内容が判然と見える形で提示していないことを、予めご説明申し上げます。
コンテンツ
前提の説明
- デスクトップ上に、フォルダー「downloded_pdf_files」があります
- フォルダー「downloaded_pdf_files」の中には、サブフォルダが2つあります。それぞれ「202102」「202103」です
- 各フォルダの中には、日付を示す4ケタの数字から始まる、PDFファイルがあります
- PDF ファイルは全部で 5つあり、各ファイルのページ数は 1ページです
やりたいこと
- フォルダー「downloaded_pdf_files」を指定して、複数のサブフォルダー内にある複数の PDF ファイルを、統合(結合)したい
- 統合(結合)したファイルでは、PDFファイル名を昇順で並べて統合(結合)したい
- 今回の例では、0226から始まる PDFファイルを先頭に、0307から始まる PDFファイルを後尾にしたい
では、やってみましょう
それでは、順にやってみましょう。ここの順序の考え方は、Windows の操作をもとに考えてみるとよいでしょう。
PDF ファイルを開くためには、PDF ファイルを含むフォルダーを開きます。その中にあるPDF ファイルを選びます。その上で、それらをまとめて統合(結合)する、といった感じです。これを、ひとつずつやっていきます。
PDF ファイルのあるフォルダを指定する
(1) アクション「フォルダー内のファイルを取得」をフローに入れます
1) 左側にあるアクションの中にある [フォルダー] – [フォルダー内のファイルを取得] を探してください。
2) 見つけたら、フォルダー内のファイルを取得を、Main フローにドラッグアンドドロップしてください。
3) アクションを中に入れると、この「フォルダー内のファイルを取得」アクションのパラメーター設定画面が表示されます。これを、順に設定していきます。
(2) 「全般」パラメーターを設定します
PDFファイルを含むフォルダを指定します。ここでは、デスクトップ上のフォルダー「downloaded_pdf_files」が、それにあたります。また、このフォルダーの中にあるサブフォルダーも、対象になります。
今回はフォルダー内に PDF ファイルしか含みませんが、実際には、それぞれ異なる形式のファイルが混ざって入っています。そのため、PDF ファイルだけを取り出すように、指定する必要があります。
それでは順にやっていきましょう。
1) 全般 の中にある [フォルダー] の枠内にある、フォルダーアイコンをクリックします(マウスカーソルを近づけると、「フォルダーの選択」と表示されます)
2) 「フォルダーの参照」ウィンドウが表示されますので、ここでデスクトップにあるフォルダー「downloaded_pdf_files」を選択します。
3) 設定したフォルダーへのパス(フォルダーの場所を表すもの)が設定されていることを確認します。
4) 今回はサブフォルダーを含める必要があるので、「サブフォルダーを含める」スイッチをオンにします
5) [ファイル フィルター] に、*.pdf と入力します。
PDF ファイルは、拡張子(ファイルの種類を識別するもの)が .pdf です。拡張子が .pdf となっている全てのファイルを探し出すために、*.pdf と書いています。
* [アスタリスク]は、特別な役割を果たす文字列「ワイルドカード」の一つで、長さ0文字以上の全てのパターンにマッチするものを示します。
(3) 「詳細」パラメーターを設定します
詳細パラメーターでは、取得したファイルの並び順を設定できます。ひょっとすると、ここが最も難しいところです(私は勘違いを繰り返したので、何度もしくじりました)。
それでは順にやってみましょう
1) 「詳細」パラメータを開きます。
2) 「詳細」パラメーターで「並べ替え基準」について、以下の通り設定します。
- 並べ替え基準
ディレクトリ、降順スイッチを ON に - 並べ替えの第 2 基準
名前、降順スイッチを ON に
3) 「保存」をクリックしてください。
PDF ファイルの並び順の確認をします
途中なのですが一度ここで実行して、「PDFファイルを取得できていること」「指定した並び順で PDFファイルが並べ替えられていること」を確認します。
(1) 実行してみましょう
1) 「▷実行」をクリックします。
実行すると、画面右側の「変数」の表示に変化があります。フロー変数の Files の中に、追記されているのです。
2) フロー変数 Files をダブルクリックしてください。
フロー変数 Files の中身が確認できます。表示されたウィンドウは小さくて見にくいので、ウィンドウ右下の⊿をドラッグして広げてください。
よく見ると、指定したフォルダー内のサブフォルダーから、合計 5 つの PDFファイルを取得していることが分かります。また、指定した並び順になっていることも分かります。
フロー変数は「フローが実行された結果、生成された変数」のことで、この場合では「指定したフォルダーから取得し、並べ替えが終了した PDF ファイルのリスト」を示しています。
※これでは初めに決めた並び順(0226から始まる PDFファイルを先頭に、0307から始まる PDFファイルを後尾に)とは違う・逆になっているのではないか、とお感じのあなた、お気持ちはとてもよく分かります。
3) 「変数の値」ウィンドウを閉じます。
PDF ファイルを統合(結合)します
(何だか不安はありますが)取り出すことができましたので、この PDFファイルのまとまりを、一つのファイルに統合(結合)します。
(1) アクション「PDF ファイルを統合」をフローに入れます
1) 左側にあるアクションの中にある [PDF] – [PDF ファイルを統合] を探してください。
2) 見つけたら、PDF ファイルを統合を、Main フローにドラッグアンドドロップしてください。
3) アクションを中に入れると、この「PDF ファイルを統合」アクションのパラメーター設定画面が表示されます。これを、順に設定していきます。
(2) 「全般」パラメーターを設定します
PDF ファイルを統合するためには、「統合の元となる PDF ファイルは何か」「統合された PDF ファイルは何という名前で、どこに置くのか」を指定する必要があります。これらは、「全般」パラメーターでいうところの「PDFファイル」「統合された PDF のパス」に、それぞれ相当します。
それでは、まず「統合の元となる PDF ファイルは何か」を指定するところから、始めましょう。「統合の元となる PDF ファイル」は、先程、その中身を確認した フロー変数 Files です。
1) 全般 の中にある [PDF ファイル] の枠内にある、{x} 変数 をクリックします(マウスカーソルを近づけると、「変数の選択」と表示されます)
2) フロー変数の中から、Files をダブルクリックで選びます。
3) [PDF ファイル] の中に、%Files% と表示されていることを確認します。
4) 全般 の中にある [結合された PDF ファイル] の枠内にある、ファイル をクリックします(マウスカーソルを近づけると、「ファイルの選択」と表示されます)
5) 保存先のフォルダーと、保存する PDFファイル名を決めます。
保存先フォルダーと保存する PDF ファイル名は、任意です(好きに決めてよいです ※PDFファイルなので .pdf にしてください)
ここでは、以下の通り決めました。
- 保存先のフォルダー
デスクトップ上のフォルダー「downloaded_pdf_files」 - 保存する PDF ファイル
combine.pdf
6) 「保存」をクリックします。
フローを実行します
お疲れ様でした。これで設定は終了しました。今の状態は、以下の通りです。
(1) 実行してみましょう
1) 「▷実行」をクリックします。
特にエラーが表示されることなく、実行されたことを確認してください。
2) 統合された PDF ファイルの保存先フォルダを開きます。
指定したフォルダ「デスクトップ上の downloaded_pdf_files」の中に、指定した PDF ファイル combine.pdf が出来上がっていることが、確認できます。
(2) 統合された PDF ファイルを開いて、中身を確認しよう
統合された PDF ファイルを開いて、中身を確認してみましょう。
1ファイル1ページなので、5ファイル分が統合されているのが分かります。また、心配していた並び順も、統合された PDF ファイルでは、きちんと昇順になっていました。
※フロー変数の、「最も上にあるものから順に取り出されて結合されている」ような振る舞い(後入れ先出し)をしているので、スタックみたいだなあと思いながら、確たる証拠が得られないので調べ直してきます。
まだまだ学ぶことは多いです
まだまだ学ぶことが多い Power Automate Desktop です。皆さんがやってみた便利な使い方があれば、是非教えてください。
以下のようにオンラインのセミナー・イベントで学べる機会があります。私も参加しますので、皆さんもよろしければ参加されてはいかがでしょうか。
緊急開催!Windows 10なら無料で出来るPower Automate Desktop勉強会! (2021/03/11 19:00〜)