🚗

PowerAutomateを使いSharePointの特定フォルダーの最新ファイルをOneDrive上にダウンロードする方法

2024/03/04に公開

他の会社の方々と仕事をする場合にSharePoint(Teams)で資料を共有したりします。そこに置かれた資料を使って内部向けに資料を編集する際に一旦ファイルをダウンロードして使う場合がありますが、定例の資料だったりすると毎回のことなのでちょっと面倒な作業になります。相手の会社が違うと置くフォルダーの構成が違ったりして、まずどこのフォルダーかを探し、最新のものかどうかを確認するのもちょっとした手間だったりします。この事態に対処するため、最新ファイルをダウンロードするPowerAutomateのフローを作成してみました。ピッタリの使い方が日本語の検索では見つからなかったり、はまるポイントもあったので手順を書き残しておきます。

大まかな手順は、指定したフォルダーからファイルのプロパティの最新の1つだけを取得し、そのファイルのコンテンツを取得して、OneDrive上にそのコンテンツのファイルを作成するというものです。

  • 左サイドメニューからマイフローを選択
  • 新しいフローの一から独自に構築するのインスタントクラウドフローを選択
  • フロー名を入力する
  • フリーを手動でトリガーするを選択して作成ボタンをクリックする
  • アクションの追加でSharePointを検索し、ファイルの取得(プロパティのみ)を選択する
  • パラメータとして以下を入力する
    • サイトのアドレス
      • ダウンロードしたいSharePointサイトのURL
    • ライブラリ名
      • プルダウンメニューからドキュメントを選択する
    • 詳細パラメータですべてを表示ボタンをクリックして、入力可能なパラメータを表示する
      • 並べ替え順Created descを入力する
      • 上から順に取得1を入力する
      • エントリをフォルダーに制限するにダウンロードしたいファイルが置いてあるフォルダーを入力する。フォルダーアイコンをクリックするとフォルダーを選択することで入力することが可能。大概はShared Documentsの下の階層
  • アクションの追加でSharePointを検索し、ファイルコンテンツの取得を選択する
  • パラメータとして以下を入力する
    • サイトのアドレス
      • ダウンロードしたいSharePointサイトのURL
    • ファイル識別子
      • 情報を入力しようとすると左側に表示される雷マークを選択し、前の手順のデータの中から識別子を選択する。表示数を増やすをクリックしないと表示されないので注意。別途IDも存在するので間違えないように注意
  • For eachが自動で追加されているが、For eachではなく、ファイルコンテンツの取得の下のプラス記号をクリックしてOneDrive for Businessを検索し、ファイルの作成を選択する。業務の場合にはOneDrive for Businessになるが、そうでない場合にはOneDriveを使うことになると思われる
  • パラメータとして以下を入力する
    • フォルダーのパス
      • ファイルをダウンロードしたいフォルダーを入力する。右側のフォルダーアイコンをクリックすると選択できる
    • ファイル名
      • 情報を入力しようとすると右側に表示される雷マークを選択し、前の手順のデータのファイルの取得(プロパティのみ)中から拡張子付きのファイル名を選択する。表示数を増やすをクリックしないと表示されないので注意。
    • ファイルコンテンツ
      • 情報を入力しようとすると右側に表示される雷マークを選択し、前の手順のデータのファイルのコンテンツの取得中からファイルコンテンツを選択する。
  • フローチェッカーでフローに問題ないことを確認する
  • 保存でフローを保存する
  • テストで実際に動作するかを確認する

Discussion