ADVERTISEMENT

【Excel】Power QueryでSharePointのファイル一覧が途中までしか表示されない時の確認手順

【Excel】Power QueryでSharePointのファイル一覧が途中までしか表示されない時の確認手順
🛡️ 超解決

ExcelのPower Queryを使ってSharePoint上のファイル一覧を取得しようとしたとき、なぜか一部のファイルしか表示されないという現象に遭遇したことはありませんか。例えば、フォルダ内に500ファイルあるのにPower Queryでは最初の200件しか読み込まれない、というケースです。この問題の原因は複数考えられ、設定や権限、SharePoint側の制限などが絡みます。本記事では、ファイル一覧が途中までしか表示されないときの確認手順を、原因の切り分け方とともに詳しく解説します。

【要点】この記事で確認すること

  • 最初に見る場所: Power Queryの「クエリの設定」にある「行の保持」や「列の選択」、およびSharePointリストのビューの制限
  • 切り分けの軸: ①Power Queryの既定の行制限(1000行)とSharePointのリストビューしきい値(5000件)のどちらが影響しているか ②フィルターや並べ替えで取得件数が変わるか ③管理者側の設定(列インデックス、検索対象)
  • 注意点: 会社PCのPower Query設定をむやみに変更すると、他のクエリに影響を与える可能性があります。また、SharePointのリストビューしきい値を超える操作は管理者の許可が必要です

ADVERTISEMENT

なぜ途中までしか表示されないのか – 主な原因

Power QueryでSharePointのファイル一覧を読み込むとき、既定では最初の1000行しか取得しません。これはPower Query側の内部的な行制限です。しかし、SharePoint自体にもリストビューしきい値(既定で5000件)があり、これに抵触する場合もあります。また、フォルダ構造やフィルター、権限の不足によって表示される項目が限定されることもあります。

Power Queryの既定の行制限

Power Queryを初めて使う場合、データのプレビューは最大1000行に制限されています。これは「クエリの設定」の「データの読み込み」で変更できます。ただし、この制限はあくまでプレビュー表示であり、実際にワークシートに読み込む際には別の制限(データモデルの行数制限など)もあります。単にプレビューが途中までしか表示されない場合は、この設定を引き上げるだけで解決することが多いです。

SharePointのリストビューしきい値

SharePoint Onlineのリストやライブラリには、1回のビュー操作で表示できる最大アイテム数として5000(既定値)が設定されています。これを超えると、Power Queryが取得しようとしてもSharePoint側が拒否したり、一部のデータしか返さないことがあります。このしきい値は管理者が変更可能ですが、パフォーマンス上の理由から推奨値は5000です。しきい値を超える場合は、インデックス列の追加やフィルターの活用が必要になります。

権限とフィルターの影響

アクセス権限がないファイルは一覧に表示されません。また、SharePointのビューに適用されたフィルターや並べ替えも、Power Queryが読み込む際の対象に影響します。Power Queryは「既定のビュー」のデータを取得するため、ビューに設定された条件がそのまま反映されます。

お探しの解決策が見つからない場合は、こちらの「Excelトラブル完全解決データベース」で他のエラー原因や解決策をチェックしてみてください。

具体的な確認手順 – 5ステップで原因を特定する

以下の手順を順に実施することで、どの制限が原因かを切り分けられます。

  1. 手順1:Power Queryのプレビュー行制限を確認・変更する
    Power Queryエディターを開き、「ホーム」タブの「データの読み込み」設定を確認します。「データの読み込み」→「データの読み込みの設定」で、「プレビューに表示する行数」が100に設定されている場合があります。これを「1000」や「すべて」に変更します。ただし、すべてに設定すると、大量データで動作が遅くなる可能性があるため注意してください。
  2. 手順2:クエリステップの「行の保持」を確認する
    クエリの「適用したステップ」に「行の保持」または「先頭の行の保持」がないか確認します。誤って最初のn行のみを保持するステップを追加していないかチェックし、不要なら削除します。
  3. 手順3:SharePointリストのビュー設定を確認する
    ブラウザで該当のSharePointリストを開き、右上の歯車アイコン→「リスト設定」→「ビューの作成」で現在のビューを編集します。「アイテム制限」で「表示するアイテム数」が指定されていないか確認し、必要なら「無制限」に変更します。ただし、5000件を超える場合はパフォーマンスに影響するため、管理者と相談してください。
  4. 手順4:Power Queryの詳細エディターでM関数を確認する
    Power Queryエディターの「詳細エディター」を開き、生成されたMコードを確認します。SharePointリストからデータを取得する関数(SharePoint.ContentsやSharePoint.Filesなど)の引数に、[PageSize]や[Take]などのオプションが指定されていないか確認します。必要であれば、これらの指定を削除します。
  5. 手順5:テスト用にフィルターを追加して件数が増えるか確認する
    取得できているファイルが特定のフォルダや日付範囲に偏っていない場合、権限やフィルターが原因の可能性があります。SharePointビューで高度なフィルターを設定し、すべてのアイテムを表示する条件(例:IDが0より大きい)に変更して、Power Queryで再取得してみます。

失敗パターンと判断基準 – 比較表で理解する

以下の表に、よくある症状とその原因、優先的に確認すべき項目をまとめました。

表示される件数 考えられる原因 確認すべき設定
ちょうど100件や1000件で止まる Power Queryのプレビュー制限(既定100または1000) 「データの読み込み」設定の行数
5000件で止まる(またはエラーになる) SharePointリストビューしきい値(5000) リストビューのアイテム制限、インデックス列
特定のフォルダ内のファイルだけ表示されない アクセス権限の不足 SharePointのアクセス許可設定
フィルターを外すと件数が増える ビューまたはMコード内のフィルター クエリの適用ステップ、ビューのフィルター

まずは表示件数がどの数値で止まっているかを確認してください。100や1000ならPower Query側、5000ならSharePoint側の制限が有力です。それ以外のバラバラな件数なら、フィルターや権限を疑いましょう。

ADVERTISEMENT

管理者に確認すべきポイント

会社のSharePoint環境では、一般ユーザーがリストビューしきい値やサイトの設定を変更できない場合がほとんどです。以下の内容を管理者に伝えて対応を依頼してください。

  • リストビューしきい値の一時的な引き上げ: 大量データをPower Queryで全件取得する必要がある場合、管理者が対象リストのしきい値を一時的に引き上げ(例:20000)てもらう方法があります。ただし、パフォーマンス低下を招くため、恒久的な変更は避けるべきです。
  • インデックス列の追加: ビューしきい値を超えるデータを扱うために、列にインデックスを設定してもらうと、フィルターや並べ替えでしきい値を回避できます。
  • Power Queryの「SharePoint.Contents」のページ分割設定: 管理者がSharePointサーバーの設定で、一度に返すアイテム数の上限(ページサイズ)を変更できる場合があります。ただし、これはSharePoint Onlineでは直接変更できません。

よくある質問

Q1. Power Queryで「SharePoint.Files」を使うのと「SharePoint.Contents」を使うのでは、取得できる行数に違いはありますか?
A. どちらも同じ制限を受けます。ただし、「SharePoint.Files」は指定したフォルダ直下のファイルのみを取得するため、サブフォルダ内のファイルが含まれず、結果的に件数が少なく見えることがあります。全件取得したい場合は「SharePoint.Contents」でリスト全体を指定し、その後フィルターでフォルダを展開する方法が適切です。

Q2. プレビューではすべて表示されているのに、ワークシートに読み込むと途中までしか入りません。なぜですか?
A. ワークシートに読み込む際の行数制限(Excelの仕様で約100万行)に抵触している可能性は低いですが、Power Queryの「閉じて読み込む」設定で「テーブル」ではなく「接続の作成のみ」を選んでいると、読み込まれないことがあります。また、データモデルに読み込む場合は、データモデルの行数制限(約20億行)は問題になりませんが、Power Query内でフィルターがかかっていないか再確認してください。

Q3. 5000件以上のデータを扱う場合、Power Queryだけでどうにかする方法はありますか?
A. 根本的にはSharePoint側のリストビューしきい値を変更するか、インデックス列を活用してフィルターをかけて分割取得する必要があります。Power Queryでは、複数のクエリでフィルター条件を変えてデータを分割し、最後に追加クエリで結合する方法も可能です。ただし、管理者の許可が必要なケースが多いため、事前に相談してください。

まとめ

Power QueryでSharePointのファイル一覧が途中までしか表示されない原因は、主にPower Query側のプレビュー制限、SharePointのリストビューしきい値、権限やフィルターの3つに分類されます。まずは表示件数の数字から制限の種類を推測し、該当する設定を確認することが第一歩です。必要に応じて管理者に連絡し、インデックスやしきい値の調整を依頼するとスムーズに解決できます。これらの手順を実践すれば、必要なファイル一覧を漏れなく取得できるようになるはずです。


📊
Excelトラブル完全解決データベースこの記事以外にも、様々なエラー解決策をまとめています。困った時の逆引きに活用してください。

ADVERTISEMENT

この記事の監修者
📈

超解決 Excel・Word研究班

企業のDX支援や業務効率化を専門とする技術者チーム。20年以上のExcel・Word運用改善実績に基づき、不具合の根本原因と最短の解決策を監修しています。ExcelとWordを使った「やりたいこと」「困っていること」「より便利な使い方」をクライアントの視点で丁寧に提供します。

🏆
超解決 Excel検定 あなたのExcel実務能力を3分で測定!【1級・2級・3級】

ADVERTISEMENT