こんにちは。アーティサン株式会社の小刀稱(ことね)です。
Power Automateを用いて業務を自動化していく中で、Excelに入力した値をデータベース化したいと思ったことはありませんか?
本連載ではPower Automateを用いて、Excelに入力されたデータをSharePointへ値を転記する際の対応方針についてお伝えします。
これにより、Excelに入力された値を、SharePointにてデータベース化することができます。
内容としては、既にPower Automateでフローを作成したことがある方に向けた記事です。
また、少々コーディングの知識も必要となります。
Power Automate初心者の方は、以下の記事も参考にしてください。
今回やりたいこと
初めに、今回やりたいことについて説明します。
Excelファイル内に氏名・メールアドレス・申請内容が入力されています。
SharePoint ドキュメントライブラリのメタデータに各値を転記します。
ExcelからSharePointへ値を転記する際の対応方針
ExcelからSharePointへ値を転記する際には、Power Automateと以下の方法を組み合わせた2パターンが考えられます。
Excelファイル内のテーブルを用いる
Office スクリプトを用いる
それぞれの方針について説明します。
(「Office スクリプトを用いる」方法については、次回の記事で紹介します。)
Excelファイル内のテーブルを用いる
Excelに新しくテーブルを作成し、その値を転記する方法です。
この方法は、コーディングの知識がなくても構築できます。
Power Automateでは、Excelデータのセルを指定し取得することはできません。
その代わり、テーブル内の値を値を取得することが可能です。
よって、先程のExcelファイルをテーブルにすればよいのですが、その場合ユーザーにとっては入力しづらくなってしまいます。
対応策として、別シートにテーブルを作成し、その値をPower Automateから取得します。
手順としては以下です。
(1)Excelのセル名を変更
入力項目となっている各セル(上記ExcelのC2・C4・C6)のセル名を変更します。
固有のセル名を付与することで、列や行を追加しても、値を参照することができるようになります。
今回は以下のように修正しました。
C2セル:Name
C4セル:MailAddress
C6セル:Contents
(2)Excelの別シートにテーブルを作成し、値を転記
Excelに新しいシート(今回は「テーブル」シート)を追加し、新しいテーブル(applyTable)を作成します。
また、テーブルの2行目に、「申請書」シートから各値を転記するよう数式を追加します。
その後、「テーブル」シートを他の人が編集できないよう、シートを保護します。
詳細な手順については、以下のURLを参照してください。
Microsoft:ワークシートを保護する
以上で、Excelの作成は完了です。
SharePointのドキュメントライブラリにExcelを保存しましょう。
(3)Power Automateにてテーブルの情報を取得、SharePointへ転記
表内に存在する行を一覧表示アクションを用いて、テーブルの値を取得します。
その後、ファイルのプロパティの更新アクションにて、SharePointへ値を転記しています。
「表内に存在する行を一覧表示」アクションは「配列」という複数のデータをひとまとめにした形式となっています。
よって、「ファイルのプロパティの更新」アクションは、配列中のデータを1行ずつ取り出して処理する「Apply to each」アクションで囲われています。
ただし、今回はテーブルの行数は必ず1行であることが明確となっているため、first()関数を用いて、
Apply to eachアクションを回避することも可能です。
詳細については、以下記事を参考にしてください。
実行結果
それでは作成したフローを実行しましょう。
保存しているExcelファイルの横にある三点リーダーから自動化→作成したフロー名をクリックすることで実行できます。
SharePoint ドキュメントライブラリをご覧いただき、Excelの各値が転記されていることを確認してください。
さいごに
本記事ではPower Appsを用いることなく、ExcelからSharePointへ値を転記する際の方法として、「Excelファイル内のテーブルを用いる」方法について説明しました。
次回は、「Officeスクリプトを用いる」方法について説明します。
ここまで読んでいただき、ありがとうございました。
【このシリーズの過去回一覧】
【こちらも合わせて読みたい】
小刀稱知哉
大分県出身(温泉大好き)、現在は東京都在住
1990年生まれ
30才でメーカーの技術営業からIT業界にジョブチェンジ!!!
趣味は読書
主にMicrosoftのローコード(SharePoint・Power Platform)に関するに関する営業活動や設計、開発などを担当しております!
持ってる資格はPL-200/PL-300/PL-400/PL-600/MS-700/AZ-104/AZ-305/SC-200