SharePointのフォルダ内のファイルを全て取得する方法

SharePointの該当フォルダ内にあるファイルを全て取得する場合、「フォルダーの一覧」アクションを使用すると、取得することができます。

しかし、SharePointサイトや参照するフォルダーが毎回同じではなく変更したい場合に変数を使用する場合があり、そのときにフローの実行が失敗になったケースがありましたので、その解決策をご紹介します。

フォルダー一覧

SharePointのフォルダーにあるファイルの名前を取得したい!

 

ファイル一覧

はじめに試してみたこと

作成したフロー

参照するフォルダーを変数として扱う場合、「フォルダーの一覧」にある「ファイル識別子」を変数にする必要があります。

「変数を初期化する」の「値」にSharePointの参照するフォルダーパスを入力し、生成された変数を「フォルダーの一覧」の「ファイル識別子」に入力してテストしてみました。

作成方法

フローの実行結果

「The response is not in a JSON format.」というエラーがかえってきました。

どうやら「ファイル識別子」はフォルダーパスではダメなようです。

実行結果

いろいろ試して成功した作りかた

作成したフロー

まずは「変数を初期化する」に参照するフォルダーパスを入力します。

そのあと「フォルダーの一覧」を使用する前に「フォルダー メタデータの取得」もしくは「パスによるフォルダー メタデータの取得」を使用します。

この「フォルダー メタデータの取得」もしくは「パスによるフォルダー メタデータの取得」の「ファイル識別子」に「変数を初期化する」で生成した変数を「動的なコンテンツ」から入力します。

最後に「フォルダーの一覧」を使い、ファイル識別子に「フォルダー メタデータの取得」で生成した「id」を「動的なコンテンツ」から使用します。

これで実行してみます。

作成方法

フローの実行結果

無事に、成功しました!

少し手間はかかりますが、成功したので、問題なく使用できそうです。

実行結果

この後の処理で、取得したファイルの名前のみを「作成」アクションに入れて、実行してみました!

すべて取得出来ているようです。

作成

他にもやり方はあるかもしれませんが、これをもとに様々なフローに使えそうです!

 

RPAノウハウは、Power Automate作成担当者がフロー作成中にエラーになり、
困ったことの解決策や小ワザを紹介していきます。皆様のお役に立てれば幸いです。

RPAに関するお問い合わせはこちら

 

この記事をSNSでシェアする