こんにちは。SharePoint Online(以下SPOと略称)は社内の情報共有ツールとして利用されることが多いと思います。そのため、複数のファイルや情報コンテンツを共有する機会がありますが、そのファイルのパスの長さには上限があります。
この2つの制約事項を守らないと、ファイル・フォルダをアップロードすることができません。
この記事では、その制約事項について紹介できればと思います。
SPOにおけるファイルパス長の制約事項
まず最初に、SPOにおけるファイルパス長の制約事項は以下2つになります。
- フォルダとファイル名の組み合わせが400文字まで
- エンコードされた文字列合計が2048文字以内
それぞれ、次の章で詳しく説明していきます。
フォルダとファイル名の組み合わせが400文字まで
SPOのファイルパスは、以下画像のように階層が下へと続いています
※ Windows11でエクスプローラーやファイルサーバーとを開いた時と同じようなイメージです

Windows11のエクスプローラーだと「\」(バックスラッシュまたは円マーク)で階層を区切られます。SPOの場合は「/」(スラッシュ)で、フォルダ毎で階層が区切られることになります。上記のイメージ画像だと、ファイルパス長は以下の通りになります。
”○○部/○○課/○○チーム/○○案件/ユーザー1/○○一覧.xlsx” = 計34文字
一見するとそこまで長くないように見えますが、SPOの場合はURLになりますので、"https://......./sites/サイト名/"の部分も文字数としてカウントされます。階層が深すぎると、400文字制限をオーバーすることになります。
エンコードされた文字列合計が2048文字以内
SPOに限らずですが、フォルダやファイル名は日本語文字等の全角文字を利用することが多いと思います。上記のイメージ画像のように、「○○部署の○○案件用フォルダ」のような名前で利用するケースが多いと思います。
SPOではあくまでURL形式となりますので、フォルダやファイル名が日本語の全角文字だと、URLに変換する場合はエンコードに変換されることになります。そのエンコードに変更した場合のURLの長さが2,048文字以内に収めるようにしなければいけません。
エンコードの例としては以下のようになります。
| 全角文字 | エンコードされる文字数 |
| 日本語文字を1文字 | 9文字(%E3%81%82) |
| 記号(&や@)を1文字 | 3文字(%26) |
| アルファベットを1文字 | 1文字(a) |
日本語文字1つをエンコードに変換するだけでも、9文字必要になります。階層を深くしてしまうとやはりファイルパス長の制限に達してしまい、ファイルをアップロードすることができなくなってしまいます。
注意したいポイント
SPOのファイルパス長について、制約事項を2つ説明しましたが、上記制約事項2つは両方満たしている必要があります。
ドキュメント管理でよくある使い方として、カテゴリごとに資料を分けることが多いと思います。カテゴリ分けは必要ですが、細かく分けすぎると内部で持っている文字数のカウントがその分増えます。その結果、今回紹介した制約事項に引っかかってしまうことなります。
回避策としては以下2つが推奨されます。
- ファイル名をなるべく短くする
- カテゴリを必要以上に分けない
まとめ
今回は、SPOのファイルパス長の制約事項について紹介しました。
運用時やデータ移行時に参考になれば幸いです。