

Microsoft Lists は、Microsoft 社が提供するリスト(表形式のデータ)管理サービスです。SharePoint のリストがベースになっており、Microsoft 365 のアカウントがあればブラウザから利用できます。また、API(Microsoft Graph)を使って各種操作を行うこともでき、この記事で紹介する自動工程もそれを用いています。
ワークフローで扱うデータはケースごとに保持されますが、処理した内容の一覧を俯瞰したい、ワークフローを使わないメンバーにも Microsoft 365 側で参照してほしい、といった場合には、リストに書き出しておくと便利です。この記事では、ワークフローの進行に合わせてリストアイテムを追加・更新・削除し、ワークフローで処理した内容を Microsoft Lists のリストに反映する方法を紹介します。
Microsoft Lists 連携の自動工程は 5 種類あり、用途ごとに 3 本の記事に分けて紹介しています。
- Microsoft Lists の取引先データを選択肢として使用する:「リストアイテム検索」でリストを取り込み、選択肢マスタを作ります
- 選択した取引先の詳細を Microsoft Lists から取得する:「リストアイテム取得」で、選ばれた 1 件の列の値をケースに取り込みます
- この記事:「リストアイテム追加」「リストアイテム更新」「リストアイテム削除」でリストを書き換えます
3 本とも同じリストと同じ HTTP 認証設定を使い回せます。この記事の「連携設定」「リストと列の指定方法」は 3 本に共通の内容です。
- 法人向け(Microsoft 365 でご利用の)Microsoft Lists のみが対象となります
- 対象となるリストは、マイリスト内のリストと SharePoint サイト内のリストです
Microsoft Lists について、詳しくは Microsoft 365 のリストとは何ですか?(Microsoft の公式ヘルプページ)をご覧ください。
各自動工程について
Microsoft Lists に関する自動工程には、ビルトイン自動工程として用意されている「Microsoft Lists: リストアイテム追加」「Microsoft Lists: リストアイテム更新」「Microsoft Lists: リストアイテム取得」「Microsoft Lists: リストアイテム検索」「Microsoft Lists: リストアイテム削除」があります。
この記事ではそのうち、リストへ書き込む「リストアイテム追加」「リストアイテム更新」「リストアイテム削除」の 3 種を取り上げます。リストのデータをワークフローに取り込む「リストアイテム検索」は Microsoft Lists の取引先データを選択肢として使用する、「リストアイテム取得」は 選択した取引先の詳細を Microsoft Lists から取得する をご覧ください。
まず、各工程について簡単に説明します。
Microsoft Lists: リストアイテム追加
指定したリストに、新しいリストアイテムを 1 件追加します。列の値は 7 列まで指定でき、データ項目の値を EL 式で埋め込めます。追加されたリストアイテムの ID をデータ項目に保存でき、この ID を使って後続の工程で同じリストアイテムを更新・取得・削除できます。
Microsoft Lists: リストアイテム更新
ID で指定したリストアイテム(1 件)の内容を更新します。更新する列は 7 列まで指定でき、少なくとも 1 列は指定する必要があります。指定しなかった列の値はそのまま残りますが、列名を指定して値を空にすると、その列は空で上書きされます。
Microsoft Lists: リストアイテム削除
[C4: 削除するリストアイテムの ID が保存されているデータ項目]で指定したリストアイテムを削除します。文字型データ項目に改行区切りで複数の ID が入っていれば、一度に複数のリストアイテムを削除できます(選択型データ項目も指定できます)。「リストアイテム検索」で得た ID をそのまま渡せます。
Microsoft Lists と Questetra BPM Suite の連携設定
Questetra BPM Suite と Microsoft Lists の連携設定(OAuth2 設定)を行います。設定の追加からトークンの取得までの手順は Microsoft 365 の他のサービスと共通です。Microsoft 365 と Questetra の連携設定 をご覧ください。テナントの設定によって管理者の同意が必要になる場合や、意図しないアカウントでトークンを取得してしまう場合の注意も、同じページにまとめています。
Microsoft Lists の 5 つの自動工程は、いずれも同じ HTTP 認証設定「Microsoft Lists」(認証タイプ「OAuth2」)を使用します。1 つ用意すれば 5 工程すべてで共有できます。設定項目[C1: OAuth2 設定]の[設定はこちらから]から追加してください。
自動工程が読み書きできるのは、トークンを取得したアカウントがアクセスできるリストです。SharePoint サイト内のリストを扱う場合は、そのサイトにアクセスできるアカウントでトークンを取得してください。
- HTTP 認証設定の共有範囲については HTTP 認証設定の共有範囲 をご覧ください
リストと列の指定方法
いずれの自動工程でも、対象のリストは[C2: SharePoint サイトの URL]と[C3: リストの名前]で指定し、列は「Lists フィールド名」で指定します。設定を始める前に、この 3 つを調べておきます。
SharePoint サイトの URL
リストの URL のうち /Lists より前の部分です。リストの置き場所によって形式が異なります。
| リストの置き場所 | SharePoint サイトの URL の形式 |
|---|---|
| マイリスト内のリスト | https://{サブドメイン}-my.sharepoint.com/personal/{ユーザ識別子}_{サブドメイン}_onmicrosoft_com |
| SharePoint サイト内のリスト | https://{サブドメイン}.sharepoint.com/sites/{サイト識別子} |
Lists フィールド名
列の指定には、画面に表示されている列名ではなく「フィールド名」を使います。調べる方法は 2 つあります。
- リストのスキーマ付き CSV をエクスポートし、各列のスキーマ内の
Nameプロパティの値を見る - WebUI でリストを表示して列の値で並び替えを行い、URL に含まれる
sortField={フィールド名}を見る
列名に日本語などの ASCII 以外の文字を使うと、フィールド名は変換された文字列になります。表示されている列名から推測せず、上記の方法で確認してください。
対応する列タイプ
自動工程が扱える Microsoft Lists の列タイプは、工程によって異なります。
| 自動工程 | 対応する列タイプ |
|---|---|
| リストアイテム追加、リストアイテム更新 | 1 行テキスト、複数行テキスト、数、通貨、選択肢(複数選択を許可していない場合)、日付と時刻 |
| リストアイテム検索 | 1 行テキスト、数、Yes/No、日付と時刻、選択肢(複数選択を許可していない場合)、通貨 |
| リストアイテム取得 | 保存先のデータ項目のデータ型によって異なります(Microsoft Lists: リストアイテム取得 の Notes をご覧ください) |
日付と時刻の列に値をセットする場合は 2024-03-26 02:15 の書式で渡します。
Microsoft Lists で表示される日付と時刻は、SharePoint サイトのタイムゾーン設定(Microsoft 365 アカウントのタイムゾーン設定とは異なります)に応じたものです。Questetra BPM Suite のタイムゾーン設定と異なる場合、表示される日付や日時にずれが生じます。
サンプルアプリ

これらの自動工程を使って作成したサンプルアプリ「取引先一覧に追加する」を紹介します。工程は「取引先登録申請」(ヒューマンタスク・最初の工程)>「一覧へ追加」(リストアイテム追加)>「承認」(ヒューマンタスク)>「一覧を更新」(リストアイテム更新)の順に並びます。
申請された取引先を Microsoft Lists の取引先一覧に 1 件追加し、承認が済んだ時点で同じリストアイテムを更新する、という流れです。こうすることで、ワークフローを使わないメンバーも Microsoft 365 側のリストで取引先と登録の進み具合を確認できます。
Microsoft Lists 側の準備
取引先一覧となるリストを 1 つ作成します。このサンプルでは、SharePoint サイト内に「Customers」という名前のリストを作成し、次の列を用意します。
| 列名 | フィールド名 | 列タイプ | 用途 |
|---|---|---|---|
| タイトル | Title | 1 行テキスト | 取引先名です。リスト作成時からある既定の列で、画面には「タイトル」と表示されますがフィールド名は Title です |
| Address | Address | 1 行テキスト | 住所です |
| SalesRep | SalesRep | 1 行テキスト | 担当営業です |
| Status | Status | 1 行テキスト | 状態です(申請中 / 登録済) |
| Note | Note | 複数行テキスト | 備考です。承認時のコメントで上書きされます |
列は半角英字の名前で作成してください(既定の「タイトル」列はそのまま使えます)。フィールド名がそのまま列名になり、設定時に調べる手間がかかりません。列の設定で変更できるのは画面に表示される[名前]だけで、フィールド名は作成時のまま変わりません。日本語の見出しにしたい場合は、英字の名前で作成してから[名前]を日本語に変更してください。
このリストは Microsoft Lists の取引先データを選択肢として使用する および 選択した取引先の詳細を Microsoft Lists から取得する と共通です。3 本の記事を試す場合でも、リストは 1 つ作れば足ります。
ワークフローアプリの設定
「取引先登録申請」工程で申請者が取引先名や住所を入力すると、次の「一覧へ追加」工程が取引先一覧に 1 件のリストアイテムを追加します。このとき「Status」列には「申請中」と入れておき、追加されたリストアイテムの ID をデータ項目に保存します。「承認」工程で承認者がコメントを入力して処理を完了すると、「一覧を更新」工程が保存された ID のリストアイテムを更新し、「Status」列を「登録済」に変え、コメントを書き込みます。
データ項目の設定
| データ項目名 | データ型 | 必須 | 「承認」工程 | 説明 |
|---|---|---|---|---|
| 件名 | – | – | 表示のみ | ケースの件名です。 |
| 取引先名 | 文字 (単一行) | ○ | 表示のみ | 登録する取引先の名前です。取引先一覧の「Title」列に入ります。 |
| 住所 | 文字 (単一行) | – | 表示のみ | 取引先の住所です。 |
| 担当営業 | 文字 (単一行) | – | 表示のみ | 社内の担当営業です。 |
| 備考 | 文字 (複数行) | – | 表示のみ | 申請時の補足です。 |
| リストアイテム ID | 文字 (単一行) | – | 表示のみ | 取引先一覧に追加されたリストアイテムの ID です。「一覧を更新」で対象を指定するために使います。 |
| 承認コメント | 文字 (複数行) | – | 編集可 | 承認者が入力するコメントです。取引先一覧の「Note」列に入ります。 |
「一覧へ追加」で保存された「リストアイテム ID」が、後続の「一覧を更新」で利用されます。
「一覧へ追加」(Microsoft Lists: リストアイテム追加)の設定
| 項目名 | 必須 | 説明 |
|---|---|---|
| C1: OAuth2 設定 | ○ | Microsoft Lists への接続に使用する HTTP 認証設定名を指定します。指定する名前の認証設定であらかじめ OAuth2 トークンを取得しておく必要があります(「Microsoft Lists と Questetra BPM Suite の連携設定」を参照)。 |
| C2: SharePoint サイトの URL | ○ | 取引先一覧のリストがある SharePoint サイトの URL を指定します。 |
| C3: リストの名前 | ○ | このサンプルでは Customers と入力します。 |
| C4: リストアイテム ID を保存するデータ項目 | – | データ項目「リストアイテム ID」を選択して指定します。 |
| C-K1: 列 1 の Lists フィールド名 / C-V1: 列 1 の値 | – | Title / データ項目「取引先名」を挿入した EL 式を指定します。 |
| C-K2: 列 2 の Lists フィールド名 / C-V2: 列 2 の値 | – | Address / データ項目「住所」を挿入した EL 式を指定します。 |
| C-K3: 列 3 の Lists フィールド名 / C-V3: 列 3 の値 | – | SalesRep / データ項目「担当営業」を挿入した EL 式を指定します。 |
| C-K4: 列 4 の Lists フィールド名 / C-V4: 列 4 の値 | – | Note / データ項目「備考」を挿入した EL 式を指定します。 |
| C-K5: 列 5 の Lists フィールド名 / C-V5: 列 5 の値 | – | Status / 申請中 と入力します。EL 式ではなく固定の文字列を指定できます。 |
列は 7 列まで指定できますが、このサンプルでは 5 列だけ使います。列の値の欄では EL 式が使えます。データ項目の値を埋め込む場合は、欄の右下の[参照を挿入する…]からデータ項目を選んで挿入してください。#{processInstanceTitle} のようにケースの情報を埋め込むこともできます。
「一覧を更新」(Microsoft Lists: リストアイテム更新)の設定
| 項目名 | 必須 | 説明 |
|---|---|---|
| C1: OAuth2 設定 | ○ | 「一覧へ追加」で指定したものと同じ設定名を選択して指定します。 |
| C2: SharePoint サイトの URL | ○ | 「一覧へ追加」と同じ URL を指定します。 |
| C3: リストの名前 | ○ | 「一覧へ追加」と同じ Customers を入力します。 |
| C4: リストアイテム ID | ○ | データ項目「リストアイテム ID」を選択して指定します。「一覧へ追加」で保存された ID のリストアイテムが対象となります。 |
| C-K1: 列 1 の Lists フィールド名 / C-V1: 列 1 の新しい値 | – | Status / 登録済 と入力します。 |
| C-K2: 列 2 の Lists フィールド名 / C-V2: 列 2 の新しい値 | – | Note / データ項目「承認コメント」を挿入した EL 式を指定します。 |
指定しなかった列(Title や Address など)の値は、そのまま残ります。一方 Note 列は、申請時の備考が承認コメントで上書きされます。取引先一覧では、Status 列が「申請中」のままのリストアイテムを見れば、まだ承認が済んでいない申請が分かります。
応用
このサンプルアプリでは扱いませんが、次のような使い方もできます。
- リストアイテム ID が分からない場合は「リストアイテム検索」でフィルタ条件から ID を求め、それを「リストアイテム更新」「リストアイテム削除」に渡します
- 「リストアイテム更新」「リストアイテム取得」の ID は文字 (単一行) か選択型(単一選択)のデータ項目で指定するため、検索結果が 1 件に絞れる場合に限ります。「リストアイテム削除」は文字 (複数行) でも指定でき、複数件をまとめて渡せます
- 差し戻しや取り消しで取引先一覧の行が不要になった場合は、「リストアイテム削除」で削除します



