カテゴリ「Microsoft Lists」の17件の投稿 Feed

2024年4月25日 (木)

SharePoint リストおよび Microsoft Lists は Windows デバイスと自動的に同期をとるようになっています。ローカルストレージにWebコンテンツをキャッシュできるようになるため、リストで操作する際のパフォーマンスが向上します。その代わりデータを更新してすぐに画面上に最新情報が表示されないことがあります。その場合は同期のタイミングを確認し、更新されるまで少し待ってみてください。

Microsoft Lists アプリのオフライン利用

Microsoft Lists アプリを PWA (Progressive Web Apps) としてインストールしておけば、同期の仕組みと組み合わせることで、オフライン状態やインターネット接続が失なわれた状態でも作業が継続できるようになっています。

同期の仕組みは?

リストの同期は、OneDrive 同期アプリの既存のメカニズムを通じて行われます。この同期機能は Project Nucleus (ニュークレアス)と呼ばれています。まずは、Microsoft Lists で利用されますが、これ以外にも Webアプリケーションに応用していく予定のようです。

この機能の背景にあるのが “Microsoft.SharePont.exe” であり OneDrive の同期と同時に提供されるコンポーネントです。このコンポーネントがインストールされると、ローカルデバイス上に Webアプリのデータをキャッシュすることで Webアプリとリンクします。Webアプリは常にクラウドからデータを取得するのではなく、ローカルキャッシュにデータをプルしたり、プッシュしたりするようになり、ローカルのWebサーバーとして機能することになります。

コンテンツの変更は最初にローカルキャッシュ内で行われ、その後、クラウドにプッシュすることになります。オフラインの場合は接続が回復するときにクラウドにプッシュします。このようにすることで、ネットワーク帯域も節約でき、ボトルネックを解消できるようになります。また、ビュー内のアイテム数やインデックス化された列の有無にかかわらず、スロットルされることもなくなります。

Project_nucleus_2

同期されているか確認する

同期しているリストにアクセスするとリスト名の隣に同期のアイコンが表示されます。マウスホバーするといつごろ同期されたのかがわかります。

20240425_114755

同期を組織で制御したい

Microsoft Lists (SharePoint リスト)の同期はグループポリシー オブジェクト(GPO)で管理できるようになっています。具体的には次のような指定ができます。

  • このデバイスで Lists 同期が実行されないようにする
  • ユーザーが他の組織から共有されたリストを同期できないようにする
  • ユーザーが Web上のオフラインエクスペリエンスにサイレント サインインできないようにする

Lists 同期ポリシー - SharePoint in Microsoft 365 | Microsoft Learn

参考資料

2024年3月21日 (木)

Microsoft_lists_form_2

Microsoft Lists アプリから新規フォームを直接作成できる機能のロールアウトがいよいよ始まりました! 

Microsoft の公式ブログでもアナウンスされました。

Collect information like a pro New Microsoft Lists forms experience in Microsoft 365

リストに情報登録してもらうために、これまでだと Microsoft Forms のフォームを別途作成してそこから Microsoft リスト (=SharePoint リスト) に登録するよう Power Automate でフローを作成することも多かったと思います。また Power Apps でリストへの登録用アプリを独自に作成して、リストにはユーザーが直接アクセスさせることなく必要項目に直接入力してもらうこともあるでしょう。

ですが、この機能によって フォームを別途作る必要はなくなりますし、リストに登録するのに Power Automate も Power Apps も不要で直接入力用のフォームを作成できてしまいます。もちろん、モバイルからも利用できます。

ちなみに、Microsoft Forms と似たUIであり、Power Apps で作成するアプリと比較するとできることは限定的なので、Power Apps が完全に不要になるわけではありませんが、ちょっとしたリスト登録用ならこのフォームで事足りることも多いと思います。

作成方法および利用方法

Microsoft Lists アプリを開いて任意のリストにアクセスしてコマンドバーに表示される「Forms」をクリックして作成を始めます。このメニューはリストに対して「編集」アクセス許可レベル以上を持っていれば表示されます

※ロールアウトされてすぐなので Forms となっていますけれど、そのうち「フォーム」とカタカナ表記になるはず。

20240321_133012_2

フォーム作成画面は「フォーム ビルダー」と呼ばれます。

20240322_121543

具体的な作成方法は下記の Microsoft の Mark Kashman さんの YouTube を確認してみてください。

ついでに、手元の日本語環境でざっと動作確認した際に録画した内容も共有しておきます。

サポートされている列

列は Microsoft Lists 側で事前に用意しておくことも可能ですし、フォーム側から「新しいフィールドを追加する」で追加することもできます。

現時点でサポートされている列は次の通りです。

  • 一行テキスト
  • 選択肢
  • 数値
  • 日付と時刻
  • 複数行テキスト
  • はい/いいえ
  • ユーザー
  • ハイパーリンク
  • 通貨

20240321_133647

画像列や添付ファイルは今のところサポートされていません。これが扱えるようになるといいんですけどね。

各列に対してフォーム上から次の操作も行えます。

  • フォーム上への表示・非表示
  • 必須項目の指定
  • 順番の並び替え
  • 列の編集(設定変更)
  • 列名の変更

※そもそもリストはPower Automateなどと連携させる場合は列名は最初は ASCII文字で作成することが推奨されています。列が内部的にもつ「内部列名」というものがUTF-16でエンコードされるためです(文字化けだと思う人もいますが、そうではありません)。ですから、最初にローマ字や英語表記で作成することも少なくないわけです。ですからリスト上はASCII文字で、フォーム上では日本語でわかりやすく書いておくということもできるということ(むろん、リスト側であとから列の表示名を日本語に変えておいても問題はありません)。


20240321_134102

テーマ

フォームには既定で4つのテーマが用意されています。

20240321_134854

「自分のスタイルを作成」をクリックすると背景とテーマの色を別途選ぶこともできます。

20240321_134949

受付期間の指定とお礼のメッセージ

「設定」では回答を受け付け始めるかどうかを指定するトグルと、確認メッセージ欄(お礼などを書くところ)も用意されています。20240321_135020

フォームの保存

フォームは自動保存されます。

プレビュー

フォームを公開する前に、プレビュー表示で送信をテストできます(右上の「プレビュー」をクリックする)。送信すると実際にリストにアイテムが追加されます。プレビューは新しいタブで開くため、確認が終わったらそのタブを閉じます。

フォームの送信

出来上がったら「フォームの送信」をクリックします。とはいえ、これで誰かに送信されるわけではなく単に共有リンクを作成するだけです。生成したリンクをメールやチャットなどで共有して利用することになります。現時点では「リンクを知っている組織のユーザー」に対する共有リンクのみが生成できます。20240321_135321

フォームの複数作成/削除

一つのリストに対して複数のフォームを作成できます。既存のフォームの複製もできます。また既存フォームの削除も可能です。

20240321_135606

複数のフォームが作成できるということは、たとえば、入力項目を変えて複数作成するなどできます。現時点では「組織内のすべてのユーザー」向けの共有リンクしか生成できませんが、当初のアナウンスからすれば、そのほかの共有リンクも作成できるようになるはずで、組織内ではこのフォーム、社外にはこのフォームを利用してもらうとか、特定の部署にはこのフォーム、それ以外は別のフォームというような配布もできるようになるのではないかと思います。

それともう一つ重要な点ですが、フォームを削除してもそのフォームから追加されたリストアイテムはそのまま残ります

既存フォームのリンクのコピー

既存フォームのリンクを再度取得するには リンクのアイコンをクリックして「リンクのコピー」をクリックします。20240321_150129

回答の承諾を停止する

2つ上の図に「回答の承諾を停止する」メニューがあります。これをクリックすると次の画面が表示されます。

20240321_150056

これにより「回答の受付」が終了します。このフォームからの送信は受け付けられなくなると言うことです。

20240321_150517

共有リンクはどうなるのか確認しましたが、リンク自体は削除はされませんでした。再び「回答の承諾を開始する」こともできるため、従来共有していたリンクをそのまま再利用できるということです。ちなみに共有リンクは一度削除してしまうと、再作成してもリンク自体別のものになってしまいます。

確認事項

2024年3月現在、ロールアウト中であり初期リリースです。これから徐々に機能が追加されていくことになるはずです。その点を踏まえたうえで現時点での確認事項です。

作成の開始場所

Microsoft リストフォームは現時点では Microsoft Lists アプリから作成する必要があります。ただし、SharePoint リストも Microsoft Lists と同じUXが段階的に投入されてきており、テナントによって(厳密にはユーザーに単位でロールアウト)は 次の図に示すようにSharePoint リスト側に Forms コマンドバーが表示されます。

20240322_190230

もし、ロールアウトが未達でSharePoint サイト内のリストからのアクセスではコマンドバーに「Forms」がでてこない場合は、SharePoint リストのURLの末尾に「?env=WebViewList」を指定するとMicrosoft Lists アプリに簡単に切り替わります。

フォームを利用できるユーザーを制限できるか?

現時点で生成できる共有リンクは「組織内のすべてのユーザー」に対するリンクだけです。

共有リンク経由でアクセスすれば、文字通り組織内のユーザーは誰でもリストに対して送信できるということですが、なにか制限はできないだろうかと考えます。例えば、テナントでMicrosoft Syntex SharePoint Advanced Managment (SharePoint の高度な管理)のアドオンライセンスを持っている場合は、サイト単位で策定のグループ内のユーザーでないとサイトにアクセスできないように制限できます。これはもともと過剰共有を低減するための仕組みであるため、組織内のすべてのユーザーが利用できる共有リンクが作られたとしても、利用できるユーザーを限定できます。

20240321_152016

制限されたアクセスにした場合、許可されたグループメンバー以外がリンクにアクセスすると「アクセス拒否」されます。20240321_152452

このように共有リンクの利用者を制限する方法もあるにはあるわけです。

共有リンクの作成者を制限しているサイトではどうなるか?

SharePoint サイトでは既定でサイトの共有設定オプションは「サイトの所有者(サイトの管理者も含む)またはメンバーが共有できる」ようになっています。ですが、このオプション設定はサイトの所有者もしくはサイトの管理者が変更できます。そのため「サイトの所有者だけ(サイトの管理者も含む)が共有できる」ように変更することもできるわけです。


20240321_152605

上図のように、「サイトの所有者(サイトの管理者も含まれる)のみがサイト内のコンテンツを共有できる」ように制限することもできるわけです。このように設定すると、管理者以外は共有リンクが作成できなくなります。

そのため、サイトのメンバーはリストからフォームビルダーは開くことができるフォームも作成できるのですが、最後に「フォームの送信」から「リンクのコピー」をするときに「アクセス権限がありません」といわれてしまい共有リンクが生成できません。ですが、フォーム自体は作成されているので、リンクの生成のところだけサイトの管理者が行うという分担も可能です。

ユーザーに対するリストの隠蔽

以前、このブログで共有リンクの仕組みについて記事を書きましたが、この機能でも使われます。

SharePoint Technical Notes : SharePoint の共有リンクの仕組み (lekumo.biz)

その記事でも説明した通り共有リンクを作成するとリストは固有の権限になります。実際にリストのアクセス権限設定を確認するとリスト自体が固有の権限になっているのがわかります。20240321_155840

ではリストの権限がどうなっているのか PnP PowerShellで探ってみましょう。すると SharingLinks グループに「ファイルの送信」というアクセス許可レベルが付与されていることがわかります。特殊なアクセス許可レベルです。

20240321_161242

さて、どういった挙動になるのでしょう。

サイトにアクセス権限を持っていないユーザーがこのフォームのリンクからアクセスするとフォームにアクセスし、情報を送信できます。リンク経由だとリストアイテムの書き込み権限があるということ。

ですが、このリストのURLまたはリストのURLに直接アクセスすると「アクセス許可がない」といわれてアクセスできません。

20240321_162139つまり、サイトにアクセスできないユーザーはリンク経由でリストにデータは追加できるが、リスト自体にユーザーはアクセスできないということです。※アイテムレベルではアクセス許可レベルは親であるリストから継承します。

最後に

Microsoft 公式ブログによると、リスト内でのフォーム作成方法についての公式ヘルプなどもこれから公開されるということです。

また、Microsoft リストに関するフィードバックポータルも用意さています。実際に利用してみて気になる点などあればフィードバックするようにしましょう。

Microsoft Lists · Community

社外共有と添付ファイルができるととても強力なんだけどなーと個人的には思っていますが、まずは社内利用でも十分使えるのではないかと思います。

2023年11月13日 (月)

SharePoint リスト (Microsoft Lists も同じ) に画像列がありますが、ここに格納する画像が以前は「サイトのリソースライブラリ(SiteAssets)」だったのが、添付ファイルとして格納されるように仕様が変更されているようです。友人の中村 太一さん(@artbreak_taichi) にも確認してもらったのですが、どうも2023年10月半ばには変更されていたようです。私の手元でも10月12日時点ですでに添付ファイルに変わっているのを確認しました。

ちなみに、添付ファイルになっているかどうかは画像を拡大するとURLが 「~/Attachments/N/...」となっていることがわかります。これによって添付ファイルとして扱われていることがわかります。

20231112_115512

添付ファイルの扱いに関しては以前YouTubeに解説を公開しているのでそちらをどうぞ。

以前は画像を追加すると別のライブラリにアップロードされていたため、アイテム削除時に同時に削除されなかったり、権限管理についても画像とアイテムとで別にしてしまうこともできたわけです。そうした不便さが解消されることになります。これまでは画像を差し替えると新たな画像がライブラリに格納されていました。そのため使わなくなった画像も残ってしまっていたわけです。ですが、今回の仕様の変更により無駄にサイトのアセットライブラリに画像が格納されなくなり、画像検索時に、不必要な画像が見つかることも少しは減るでしょう。ちなみに、画像を新しいものに差し替えれば以前のファイルは削除され新しいファイルにさし変わっているようです。

無論、以前作成したリストですでに画像がアップロードされているところはそのままのようです。画像を拡大表示したときのURLは従来通り「~/api/v2.1/drives/文字列」というようになっているのがわかります。※Microsoft Graph のエンドポイントですね (SharePoint REST v2 (Microsoft Graph) エンドポイントを使用した操作 | Microsoft Learn)

20231112_115345

画像のドラッグ&ドロップ

この仕様が変更されたあとは、画像列は編集フォームやグリッドビューにしなくても直接列に対して手持ちの画像をドラッグ&ドロップできるようになったようです(もともとアナウンスはされていた機能ですがようやくです)。ただ、列が空白になっている場合のみであり、既存の画像があると差し替えてくれることはありません。この場合は手動で削除してアップロードしなおしをする必要があります。

2023年9月 1日 (金)

Microsoft Lists (SharePoint リストも同様) に新しく「スキーマ付きCSVにエクスポート」というオプションが増えます。

20230831_102422

さて、これまでのCSVとは何が違うのか。従来はデータのみをエクスポートしていたわけですが、この新しいオプションでは次の情報もエクスポートできます。

  • カスタムの書式
  • 選択肢のピル書式
  • リッチテキストベースの編集
  • 人のデータ (ユーザーとグループ例)

要するにリストをより手軽に複製しやすくなるということです。リスト作成は既存のリストから作成する機能もありますが、この場合はデータはコピーされません。CSVにエクスポートしてインポートする方法であれば、データも含め初回リスト作成時にデータインポートができるわけですが、これまでは書式などは持っていくことができませんでした。


この機能のロールアウトスケジュールは次の通りです。

対象リリース 2023年8月下旬~9月上旬
標準リリース 2023年9月中旬~9月下旬

ちなみに、従来の CSVにエクスポートする機能も次の若干のアップデートがあります

  • はい/いいえ 列はこれまでのYes/No ではなく、True/False としてエクスポートされる

CSVファイルの内容確認

実際にエクスポートしたCSVファイルを確認しみましょう。従来通りのCSVファイルだと次の通りです。

20230901_145006

続いて、スキーマ付きのCSVを確認してみましょう。

最初に ListSchema={リストのスキーマ情報} が追加されるようになります (このスキーマ情報は SharePoint では昔から利用されている CAMLという言語によりXML形式で書かれています)。

20230901_144934

このリストでは、ユーザーとグループ列がありますが、従来だと表示名のみしかエクスポートしなかったものが、主要なメールアドレスをエクスポートするように変わります。また、日付形式も標準化された Universal DateTime 形式になっています。この例では先頭の「返却日」列が該当していて、単なる CSV へのエクスポートでは “2020/10/16 16:20” となっているのが、"2020-10-16T07:20:00Z" となっているのがわかります。ちなみに、この対応は「日付と時刻」の列で「時刻を含む」ように設定している場合であり、日付のみの場合は該当しません。さらに、先ほど触れたように “はい/いいえ” 列は従来の YES/NO ではなく、TRUE/FALSE に変わります。

インポートを試す

ではこのCSV ファイルをインポートしリストを新規に作成してみましょう。

※誤解している方も多いようですが、CSVファイルからのデータのインポートはリストを新規に作成するときにのみ利用できます。

元となるリストは次のようなリストです。日付と時刻、選択肢、はい/いいえ、複数行(リッチテキスト)の列を用意しています。画像列も用意していますが、画像列はデータ自体のエクスポートとインポートはできません(画像ファイル名を文字列として渡すだけ)。

20230901_142322

リストを新規に作成する際に、「CSVから」を選択します。

20230901_143433

次の図に示すように、従来のCSVからのインポートではほとんどの列が既定では1行テキストとなっていました。元の列の情報をもっていないためです。

20230901_142643

ですが、スキーマ付きのCSVファイルを使うと、次の図に示すように、列の種類などの情報も保持されており、列の種類も元のままとなります。ただ、画像などスキーマ付きのエクスポートをサポートしていない列は1行テキストのままです。

20230901_142715

インポートを行うと、列の書式や複数行テキストのリッチテキストもそのまま複製されていることがわかります。

20230901_142751

なお、インポートすると現時点では field_0 という謎の列が追加されます。編集などもできないため非表示にしておくようにしましょう。

20230901_142816

2023年7月21日 (金)

現在、Microsoft リストは新しい UX がロールアウトされています。これがロールアウトされるとSharePoint サイト側でリストを新規に作成すると、Microsoft Lists アプリにリダイレクトされるようになります。ちなみに、既存のリストでも Microsoft Lists アプリで開くようになります。

※2023年7月20日現在の情報です。

[ロールアウト情報]

  • ターゲットリリーステナント: 2023年7月下旬~8月上旬
    ※Twitterでもつぶやきましたが、うちのテナントは7月上旬にはきてはいました。ですが、正式にはちょうど今頃ということですね。
  • 標準リリーステナント: 8月上旬~10月上旬

同じテナントでもユーザーによってロールアウト状況はまちまちになるかもとのこと。

利点

この新しいUXでは次のような利点が享受できます。

  • アイテムの追加や編集画面が画面中央にポップアップされ、画面を広く使える
  • 操作の結果が画面下部にポップアップするので見やすい
  • 複数ユーザーで同時編集したときに編集箇所がリアルタイムでわかる
  • 列のタイトルに列の種類を示すアイコンが表示される
  • 新しい評価列が追加できる
  • グループ化とグループ化の解除が容易 (どの列でグループ化しているのかが簡単にわかる)
  • 横スクロール時に左端の列が固定される
  • ビューの削除メニューがわかりやすくなった
  • アイテムを追加するときに「新規」ではなく「新しいアイテムを追加」メニューになっている

新しくなった基本的な使い方をビデオにざっとまとめてみました。

✨重要!

さらにリスト内の5000アイテムを越えている場合、従来は並び替えがうまく機能しなかったのですが、これがきちんと動きます!!

ルールのトリガー条件 ※2023年7月24日追記

ルールのトリガー条件も新しくなります。従来は次の4つでした。

  • 列自体が変更されたとき
  • 列の値が変更されたとき
  • 新しいアイテムが作成されたとき
  • アイテムが削除されたとき

20230724_120134

このうち「列自体が変更されたとき」と「列の値が変更されたとき」とが統合されて「列のデータが変更した」となり、全部で3つになります。

  • 列のデータが変更した
  • 新しいアイテムが作成されたとき
  • アイテムが削除されたとき

20230724_120238

注意点

次のものは新しいUXは未対応です。

  • SharePoint Framework extensions をインストールしているリスト
  • PowerApps で SharePoint フォームをカスタマイズしているリスト
  • 承認フローがあるリスト
  • プレイリスト

ただし、上記以外のリストでもいくつかの機能の消失や不具合も見られます。気が付いている範囲でリストアップしておきましょう。

  • ビュー上の画像列をクリックしても拡大されなくなった
  • 詳細ウィンドウがないので複数アイテムを選択して列の一括編集ができない
  • ビューの書式が崩れる
  • 既定でギャラリー表示オプションがない
  • ギャラリー表示のビューを作っても、カードデザイナーがない

これらはゆくゆくは解消されていくのかなとは思っています。

ですが、現状では場合によっては従来のUXに変更したいこともあります。では従来のUXに変えるにはどうするのか? これは簡単で画面右上の [アクセスの管理]横にある矢印アイコンをクリックすることです。マウスホバーすると「サイトで開く」と表示されます。

20230720_130213

サイト単位での機能のオフ

また、テナントのグローバル管理者や SharePoint 管理者はPowerShellを使えば、サイト単位で新しいUX の機能を使わないように制御できます。

Set-SPOSite -Identity <サイトのURL> -ListsShowHeaderAndNavigation $true

SharePoint 管理シェルは最新版の 16.0.23814.12000 を使って設定してみたところ、左側が抑制済み、右側は既定のままとなりました。

[追記 (Sept 21, 2023)]

PowerShellを使わずとも、リストの設定ページからも設定できるようになりました

🔗  SharePoint サイトのリストをMicrosoft Lists アプリで既定で開かないようにする