デスクワークを超絶快適にするおすすめギアたち詳しく見る

フォルダーから更新日の新しい4ファイルだけを取得して開く方法

じょじお

この記事ではPower Automate for desktopで複数のファイルが格納されたフォルダの中から直近の数ファイルだけ開く方法について学習します。

目次

今回のゴール

“C:\Users\user\Desktop\Folder”

Excelファイルがいくつか格納されたフォルダがあります。Power Automate for desktopを使ってこの中から最新の4ファイルだけを開きます。

Power Automate for desktopフローの作成

じょじお

フローを作成していきます。

STEP
Power Automate for desktopを起動して新規フローを作成します。
STEP
「フォルダー内のファイルを取得」アクションを追加します。
Power Automate for desktop

▲パラメータを入力します。

  • フォルダー:C:\Users\user\Desktop\Folder
  • ファイルフィルター:*.xls*
  • サブフォルダーを含める:オフ
  • 並べ替え基準:最終変更日時
  • 降順:

最新のファイルを取得する場合は、最終更新日で降順にソートして取得します

STEP
一度フローを実行してみます。
じょじお

変数の確認のためにフローを実行してみましょう。

Power Automate for desktop

▲フローを実行して「Files」変数の中身を確認してみます。「フォルダー内のファイルを取得」アクションが生成するFiles変数には上図のようにきれいに新しい順にファイルが整列して取得されています。これは最終日時で降順にソートする設定を行ったためです。

Power Automate for desktop

▲Filesに取得したファイルを一個取り出すにはインデックス(上図の左側の数字)を使います。たとえば一番上のファイルを取り出すときはインデックスは0番ですので「 %Files[0]%」と指定して呼び出します。

そして今回開きたいファイルはFilesの中で直近の4ファイルだけです(上図赤枠)。インデックスを使ってあらわすと下記の4つです。

  1. %Files[0]%
  2. %Files[1]%
  3. %Files[2]%
  4. %Files[3]%
じょじお

ここまでわかればあとは上記の4つのExcelファイルを「Excelの起動」アクションで開くだけです。

ぽこがみさま

「Excelの起動」アクションを4個追加するの?

じょじお

もちろんそれでもOKだね。でもループ処理を使えばもっと効率的にスタイリッシュにフローを作ることができるよ。

STEP
「Loop」アクションを追加します。
Power Automate for desktop

▲パラメータを入力します。

  • 開始値:0
  • 終了:3
  • 増分:1

回数を指定するループはFor eachではなくLoopアクションを使います。先ほど確認した通りインデックスは0から始まっていたので開始値は0とします。0から3までループを4回転させたいので終了値は3とします。増分は1とします。増分を1とした場合「0 > 1 > 2 > 3」とループし、2とした場合「0 > 2 > 4 > 6」となります。

STEP
(ループの中の処理)「Excelの起動」アクションを追加します。
Power Automate for desktop

▲パラメータを入力します。

  • Excelの起動:次のドキュメントを開く
  • ドキュメントパス:%Files[LoopIndex]%
  • インスタンスを表示する:オン

ドキュメントパスに%Files[LoopIndex]%と指定することで0~3までの数字が LoopIndex に順番に入ってくるのでループのたびにファイルを1つずつ開くことができます。

  • 1回目のループ:%Files[LoopIndex]% は、%Files[0]% です。
  • 2回目のループ:%Files[LoopIndex]% は、%Files[1]% です。
  • 3回目のループ:%Files[LoopIndex]% は、%Files[2]% です。
  • 4回目のループ:%Files[LoopIndex]% は、%Files[3]% です。
じょじお

このように%Files%変数のインデックスに LoopIndex変数を使うことで、「Excelの起動」アクションを1個追加するだけで希望の回数分実行できるの。

ぽこがみさま

同じアクションを何個も追加するよりも見やすいしわかりやすいね!

じょじお

アクションの数が減るってことは、フローに何か変更を加えなければいけなくなったときも、その分 対応箇所が減るから楽になるよ。ループは便利だから積極的に利用してみてね。

STEP
フローが完成しました。
Power Automate for desktop
フロー完成図
STEP
フローを実行してみます。

フローを実行します。最新のファイルが順番に4つ開けるか確認しましょう。

Robinソースコード

Folder.GetFiles Folder: $'''C:\\Users\\user\\Desktop\\Excelファイル格納フォルダ''' FileFilter: $'''*.xls*''' IncludeSubfolders: False FailOnAccessDenied: True SortBy1: Folder.SortBy.LastModified SortDescending1: True SortBy2: Folder.SortBy.NoSort SortDescending2: False SortBy3: Folder.SortBy.NoSort SortDescending3: False Files=> Files
LOOP LoopIndex FROM 0 TO 3 STEP 1
    Excel.LaunchExcel.LaunchAndOpen Path: Files[LoopIndex] Visible: True ReadOnly: False LoadAddInsAndMacros: False Instance=> ExcelInstance
END

▲フローデザイナーに張り付けることでここで作成したフローを再現することができます。

まとめ

じょじお

この記事では、特定のフォルダーの中の、直近数ファイルを開く方法について学習しました。

ぽこがみさま

このブログではRPA・ノーコードツール・VBA/GAS/Pythonを使った業務効率化などについて発信しています。
参考になりましたらブックマーク登録お願いします!

Power Automate学習教材

Power AutomateをKindleで学びたい方はコチラ

▲Kindleと紙媒体両方提供されています。デスクトップフロー、クラウドフロー両方の解説がある書籍です。解説の割合としてはデスクトップフロー7割・クラウドフロー3割程度の比率となっています。両者の概要をざっくり理解するのにオススメです。

Power Automate for Desktopの基本をしっかり学習するのにオススメです。RPA界隈では有名なRPAエンジニア集団である『ロボ研』さんが監修されている解説書です。テスト用の業務Webシステム/デスクトップ業務アプリを使いながら実践形式で学習できる点が一番のメリットかなぁと思います。

Power Automate クラウドフローの入門書です。日本語の解説書は数少ないのでレアかと思います。変数の解説から代表的なアクションの解説がされているので初心者におすすめの本です。

Microsoft 365/ Power Automate / Power Platform / Google Apps Script…

Power Automateを動画で学びたい方はコチラ

▲Udemyで数少ないPower Automateクラウドフローを主題にした講座です。セール時は90%OFF(1200円~2000円弱)の価格になります頻繁にセールを実施しているので絶対にセール時に購入してくださいね。満足がいかなければ返金保証制度がありますので安心してご購入いただけます。

この記事が気に入ったら
フォローしてね!

シェアしてくれたらウレシイ(·:゚д゚:·)
  • URLをコピーしました!
  • URLをコピーしました!
目次
閉じる