SharePoint のドキュメント ライブラリでは任意のプロパティを持たせることができます。これにより、ファイル名からだけだと内容が推測できない場合も、プロパティを見ればおよそ内容が把握できるようになります。このプロパティの値は、ファイルをアップロードするたびにユーザーがつど設定する必要があり、なかなか面倒です。
たとえば、 Excel のファイルを例に、SharePoint のライブラリに Excel ファイルがアップロードされたら、自動的にファイルの内容を読み取って必要な情報をプロパティに設定してもらえるようにしたい。
そこで登場するのが Office Scripts と Power Automate です。
なお、この記事は Office 365 Advent Calendar 2020 に参加しています。
Office 365 Advent Calendar 2020
Office Scripts は Web用の Excel (Excel Online) 上で利用できるスクリプトであり、TypeScript で記述します。これと Power Automate を組み合わせると実に様々な処理が可能です。とはいえ、Office Scripts を利用するには Office 365 E3 または E5 のライセンスが必要であり、テナントレベルで機能がオンになっている必要があります。既定でオンになっていますが、テナント管理者のさじ加減で設定がオフにされていることもあるので、組織内で確認してください。また Office Scripts は 2020 年12月、現在まだプレビューの状況です。
実際の動作を確認するためにデモンストレーションと構築方法をビデオで公開しました。詳しくは次のビデオ (YouTube) をご参照ください。
ビデオの補足情報
SharePoint サイト側では任意のドキュメント ライブラリを用意します。このデモでは次の列を4つ追加しています。
- 見積金額…通貨
- 組織名…1行テキスト
- 部署名…1行テキスト
- 担当者名…1行テキスト
Excel は次のサンプルファイルを用意しています。類似したファイルを用意して試すとよいでしょう。
Office Scripts は次のようなスクリプトを用意しています。
これを次のような Power Automate のフローで呼び出します。