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

フォルダが存在しないかどうか確認してからフォルダを作成する方法。

目次

「フォルダーが存在する場合」アクションについて

フォルダーが存在するか・しないかを確認してから処理を実行したい時があります。そんな時に使えるのが「フォルダーが存在する場合」アクションです。

フォルダーが存在する場合」アクションで下記のようなフローが作成できます。

  • 「FolderA」フォルダーが存在したら「FolderA」フォルダーを削除する。
  • 「FolderA」フォルダーが存在したら「FolderA」フォルダーの中身を全部取得する。
  • 「FolderA」フォルダーが存在しなかったら「FolderA」フォルダーを作成する。
じょじお

この「フォルダーが存在する場合」アクションを使っていくつかフローを作成してみます!

フォルダーが存在しない場合にフォルダ―を作成する方法

STEP
作成するフローの要件を確認します。

デスクトップ上にtestフォルダーが存在しない場合、testフォルダーを作成するフローを作成します。

STEP
Power Automate for desktopを起動して新規フローを作成します。
STEP
「フォルダーが存在する場合」アクションを追加します。

▲「フォルダー」グループの中の「フォルダーが存在する場合」アクションを追加します。

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

  • フォルダーが次の場合:存在しない
  • フォルダーパス:フォルダーのパスを入力します。ここではC:\Users\user\Desktop\testと入力しました。

「フォルダーが次の場合」のパラメータは「存在しない」か「存在する」を選択できます。フォルダーが存在しないときに処理を実行するのか、存在しないときに処理を実行する

▲「フォルダーが存在する場合」アクションをドラッグアンドドロップすると「End」というアクションも同時に追加されます。この2つのアクションの間に「フォルダーが存在しない場合」に実行したいアクションを追加します。

STEP
「フォルダーの作成」アクションを追加します。

▲「フォルダー」グループの中の「フォルダーの作成」アクションを追加します。「フォルダーが存在する場合」アクションと「End」アクションの間に追加するように注意してください。

▲「フォルダーの作成」アクションのパラメータを入力します。

  • 新しいフォルダーを次の場所に作成:C:¥Users¥user¥Desktop¥
  • 新しいフォルダー名:test
STEP
アクションを実行してみます!

アクションを何回か実行してみると次の結果になります。

  • 1回目の実行結果
    • testフォルダが存在しないためtestフォルダが作成された。
  • 2回目以降の実行結果
    • testフォルダが存在するため「フォルダの作成」アクションは実行されずにスキップされた。

Robinソースコード

IF (Folder.IfFolderExists.DoesNotExist Path: $'''C:\\Users\\user\\Desktop\\test''') THEN
    Folder.Create FolderPath: $'''C:\\Users\\user\\Desktop\\''' FolderName: $'''test''' Folder=> NewFolder
END

フォルダーが存在する場合にフォルダー内のファイルを取得する方法

STEP
作成するフローの要件を確認します。

testフォルダーが存在する場合に、フォルダー内のファイルを取得するフローを作成します。

STEP
Power Automate for desktopを起動して新規フローを作成します。
STEP
「フォルダーが存在する場合」アクションを追加します。

▲「フォルダー」グループの中の「フォルダーが存在する場合」アクションを追加します。

▲「フォルダーが存在する場合」アクションをドラッグアンドドロップすると「End」というアクションも同時に追加されます。この2つのアクションの間に「フォルダーが存在する場合」に実行したいアクションを追加します。

STEP
「フォルダー内のファイルを取得」アクションを追加します。

▲「フォルダー」グループの中の「フォルダ―内のファイルを取得」アクションを追加します。

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

  • フォルダー:フォルダーのパスを指定します。ここではC:\Users\user\Desktop\testと入力します。
  • ファイルフィルター:*

ファイルフィルターに「*」を入力するとすべてのファイルを取得します。例えばテキストファイルだけを取得する場合は「*.txt」と入力します。

STEP
フローを実行します。

フローを実行すると下記のような結果になります。

  • testフォルダーが無い場合
    • 「フォルダー内のファイルを取得」アクションはスキップされます。Files変数の中身は空っぽです。
  • testフォルダーが存在する場合
    • 「フォルダー内のファイルを取得」アクションが実行されます。Files変数の中身にtestフォルダーの情報が取得できます。

Robinソースコード

IF (Folder.IfFolderExists.Exists Path: $'''C:\\Users\\user\\Desktop\\test''') THEN
    Folder.GetFiles Folder: $'''C:\\Users\\user\\Desktop\\test''' FileFilter: $'''*''' IncludeSubfolders: False FailOnAccessDenied: True SortBy1: Folder.SortBy.NoSort SortDescending1: False SortBy2: Folder.SortBy.NoSort SortDescending2: False SortBy3: Folder.SortBy.NoSort SortDescending3: False Files=> Files
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をコピーしました!
目次
閉じる