SharePointリストは膨大なデータを蓄積するほど便利ですが、アイテム数が増えると一覧表示が遅くなる現象が発生します。この問題は、SharePoint Onlineのリストビューしきい値(デフォルト5000アイテム)やインデックス設定の未構成が主な原因です。本記事では、表示が遅くなる原因を切り分け、具体的な対処手順を解説します。設定変更が必要な場合は管理者へ依頼するポイントも併せて紹介します。
【要点】この記事で確認すること
- 最初に見る場所: リストのアイテム総数と現在のビュー設定、特にフィルターや並べ替えの有無
- 切り分けの軸: アイテム数が5000を超えているかどうか、インデックスが適切に設定されているか、ビューで全アイテムを表示していないか
- 注意点: リストビューしきい値(5000)を管理者が上げることは可能ですが、SharePoint Online全体のパフォーマンスに影響するため推奨されません。まずはインデックスとビュー設計を見直しましょう
ADVERTISEMENT
目次
表示が遅くなる主な原因
SharePointリストの表示速度低下には、いくつかの典型的な原因があります。それぞれを順に確認していきます。
リストビューしきい値の超過
SharePoint Onlineでは、1つのリストビューで一度に取得できるアイテム数に制限があります。デフォルトでは5000アイテムが上限です。この数を超えると、ページの読み込みに時間がかかったり、エラーが表示されることがあります。特に、フィルターや並べ替えを適用しない「すべてのアイテム」ビューを開いた場合に問題が顕著です。
インデックスが設定されていない列でのフィルター・並べ替え
SharePointはデータベース上で動作しており、インデックスが設定されていない列に対してフィルターや並べ替えを実行すると、全アイテムをスキャンするため負荷が高まります。特に、リストに数万件のアイテムがある場合、インデックス無しの列で検索すると著しく速度が低下します。
多くの列や複雑な計算列の存在
リストに大量の列(100列以上)や、他の列を参照する計算列、ルックアップ列が多数含まれていると、表示のたびに計算処理が発生し、速度に影響します。また、添付ファイルや画像を多数含むリストも同様です。
ブラウザやネットワークの問題
クライアント側の要因として、ブラウザのキャッシュが古い、拡張機能が干渉している、ネットワーク帯域が不足している、といったケースも考えられます。ただし、これらはリスト固有の問題というより、全般的なOffice 365の動作が遅い場合に疑うべきです。
事前確認:現在のアイテム数とビュー設定を把握する
対処を始める前に、リストの状態を正確に把握します。以下の3項目を確認してください。
- アイテム総数: リストの右上にある「…」メニューから「リストの設定」→「リストの詳細」を開き、「アイテム数」を確認します。あるいは、リストのフッターに表示される件数でも大まかに分かります。
- 現在のビュー名とフィルター: リスト上部のビュー切り替えドロップダウンで現在選択しているビューを確認します。そのビューにフィルターや並べ替えが設定されているか、「ビューの編集」から確認します。
- インデックスの設定状況: 「リストの設定」→「インデックス付き列」を開き、どの列にインデックスが設定されているか確認します。通常、日付列や選択肢列、ユーザー列などよくフィルターに使う列にインデックスを設定します。
これらの情報をもとに、原因を絞り込みます。例えばアイテム数が5000未満でも遅い場合は、ビューに問題があるか、列の構成が複雑すぎる可能性があります。
対処手順:パフォーマンスを改善する具体的な方法
以下、手順に沿って改善を試みてください。最初の3つは自分で実施可能なもの、後半は管理者権限が必要な場合があります。
手順1:ビューにフィルターを設定して表示件数を減らす
リストビューでは、表示するアイテムに条件を追加することで、しきい値を超えるリストでも快適に操作できます。例えば「作成日が今月」や「ステータスが進行中」など、業務に必要な範囲に絞り込みます。
- リスト上部のビュー名の横にある∨(下矢印)をクリックし、「現在のビューの編集」を選択します。
- 「フィルター」セクションで、「次の条件を満たすアイテムのみ表示する」にチェックを入れ、適切な列と条件を指定します。例:「作成日」が「今日から7日前」より新しい。
- 「並べ替え」セクションでは、インデックスが設定された列で並べ替えるようにします。可能なら「ID」など自動インデックスが付く列を使います。
- 「OK」をクリックして保存します。これにより、表示されるアイテム数が5000未満に抑えられ、速度が改善されます。
もし元の全アイテムビューが必要な場合は、新しいビューを作成してこのフィルター設定を適用し、既定のビューを切り替える方法もあります。
手順2:よく使う列にインデックスを設定する
フィルターや並べ替えの対象となる列にインデックスを追加すると、データベースの検索が高速化します。インデックスはリスト設定から管理者が行えますが、一般的な編集権限でも設定可能な場合があります(SharePointのバージョンによる)。
- リスト設定(歯車アイコン → 「リストの設定」)を開きます。
- 「インデックス付き列」をクリックします。
- 「新しいインデックスの作成」をクリックし、フィルターで頻繁に使う列(例:「作成日」「ステータス」「担当者」)を選択します。
- 「作成」をクリックします。インデックスの設定は即座に反映され、その後のクエリが最適化されます。
ただし、インデックスを追加しすぎると更新処理が遅くなるため、必要な列だけに絞ります。
手順3:リストを分割またはアーカイブする
どうしてもアイテム数が際限なく増える場合は、リストそのものを分割するか、期限切れデータを別のリストやライブラリに移動することを検討します。例えば年度ごとにリストを分けたり、過去ログ用のリストを作成してデータを移動します。
- 新しいリストを作成します(例:「2024年度顧客管理」)。
- 元のリストから該当データをエクスポート(Excelなどに出力)し、新しいリストにインポートします。このとき、SharePointの「データのエクスポート」機能やPower Automateを使うと効率的です。
- 元のリストでは、移動したアイテムを削除するか、ビューのフィルターで非表示にします。
この方法は根本的な解決になりますが、リスト構造を変更するため、他の機能(Power Appsやワークフロー)に影響がないか事前に確認してください。
状況別の比較表:改善策の効果と適用タイミング
以下の表は、リストの状態ごとに適した対処と期待できる効果をまとめたものです。
| 状況 | 推奨対処 | 効果 | 注意点 |
|---|---|---|---|
| アイテム数5000未満で遅い | ビューのフィルター確認、インデックス設定 | 小〜中程度改善 | ビューに不要な列がないかも確認 |
| アイテム数5000超、頻繁にフィルターを使用 | インデックス設定、フィルタービューの作成 | 大幅改善 | フィルター条件はインデックス列を使う |
| アイテム数数万件、全件表示が必要 | リスト分割、アーカイブ | 根本的改善 | データ移行の負荷、関連機能の影響確認 |
| 管理者がしきい値を上げた | 一時しのぎ。根本解決には非推奨 | 限定的、リスクあり | 全体パフォーマンス低下の可能性 |
この表を参考に、現在のリストの状態に合った対策を選んでください。
よくある質問(FAQ)
Q1. リストビューしきい値は変更できますか?
SharePoint Onlineでは、テナント管理者がPowerShellを使用してリストビューしきい値を最大20000まで引き上げることが可能です。ただし、これは推奨されません。しきい値を上げると、そのリストだけでなく、同じサイトコレクション内の他のリストにも影響を与え、全体のパフォーマンスが低下する恐れがあります。まずはビュー設計とインデックスで対応することをお勧めします。
Q2. インデックスを設定しても効果がないのはなぜですか?
インデックスの効果は、フィルターや並べ替えに使う列に設定した場合に最大限発揮されます。また、複合条件(複数列のAND/OR)を使う場合、最初の列にしかインデックスが効かないことがあります。そのため、フィルター条件の組み立てを見直すか、複合インデックス(複数列でのインデックス)を検討してください。ただし、複合インデックスはUIから設定できず、PowerShellが必要です。
Q3. ブラウザのキャッシュをクリアすると改善しますか?
ブラウザのキャッシュが古いと、SharePointのスクリプトやスタイルが正常に読み込めず、表示が遅くなることがあります。特に、SharePointのアップデート後はキャッシュが原因で不具合が起きやすいです。キャッシュクリアは簡単に試せる対処法ですので、一度実施してみてください。ただし、根本的な解決にはなりませんので、上記の手順と併用してください。
管理者へ伝えるべき情報と確認事項
自分で設定変更ができない場合、管理者に依頼する必要があります。その際、以下の情報を整理して伝えるとスムーズです。
- リストのURLと名前: どのリストで問題が発生しているか正確に伝えます。
- 現在のアイテム数とビュー設定: 総アイテム数、問題のビュー名、フィルター条件の有無。
- 試した対処: すでにフィルターやインデックスを試したかどうか、その結果。
- 求める対応: 例えば「○○列にインデックスを追加してほしい」「新しいビューを作成したいので編集権限を付与してほしい」など。
管理者がしきい値の変更を提案してきた場合は、上記のリスクを伝え、代替案を検討するよう依頼しましょう。
まとめ
SharePointリストの表示が遅い問題は、多くの場合、アイテム数の増加とそれに適応していないビュー設定やインデックス不足が原因です。まずはアイテム総数と現在のビューを確認し、フィルターで表示件数を絞ることで即効性のある改善が期待できます。さらに、よく使う列にインデックスを設定することで、データベースの検索効率が向上します。根本的にアイテム数が管理しきれない場合はリストの分割も視野に入れ、管理者と協力して適切な設計を心がけてください。これらの対策を実施すれば、日常業務でのストレスを大幅に減らせるはずです。
超解決 リモートワーク研究班
Microsoft 365の導入・保守を専門とするエンジニアグループ。通信障害やサインイン不具合など、ビジネスインフラのトラブル対応に精通しています。
Office・仕事術の人気記事ランキング
- 【神技】保存せずに閉じたExcel・Wordファイルを復元する!消えたデータを復活させる4つの救出法
- 【Outlook】添付ファイルが「Winmail.dat」に化ける!受信側が困らない送信設定
- 【Word】差し込み印刷で数字の桁を整える!金額にカンマ(桁区切り)を入れる設定
- 【Teams】メッセージを「保存済み」にして後で読む!重要なチャットをブックマークして整理する技
- 【Excel】文字が入っているセルの「個数」を数える!COUNTA関数の簡単な使い方
- 【Word】校閲機能の基本!赤字(変更履歴)とコメントで修正を見える化する
- 【PDF】PDFに入力した文字の「フォント・サイズ・色」を変更するプロパティ設定
- 【Copilot】「サービスに接続できません」エラーの原因切り分けと対処法
- 【Outlook】予定表の「祝日」が表示されない!最新カレンダーの追加と二重表示の修正手順
- 【Teams】画面共有時に「音声」も共有する方法!音が流れない時の設定手順
