アーティサン株式会社
  • SharePoint

SharePoint: 「スキーマを含むCSV」でリストを移行する(前編)

この記事を書いた人
小鷹枝里子

小鷹 枝里子こたか えりこ

SharePoint Power Automate Power Apps 技術アドバイス・教育支援

SharePointを中心に、サイトの設計・構築・運用支援を担当しております。標準機能を活かした設計や、Power Automate・Power Appsを用いた業務改善支援はぜひお任せください!

PL-400

はじめに

本記事では、「スキーマを含むCSV」を活用した、内部名や列設定を含むSharePointリストの移行方法についてご紹介します。

SharePointを利用していると、「リストを別のサイトへ移行したい」といったニーズが発生することがあります。
「スキーマを含むCSV」を使用してリストを移行することで、内部名を含めたリストの移行が簡単に行えます。

以下、その手順や他の移行方法との違いについて詳しく解説します。

 

「スキーマを含むCSV」とは

スキーマを含むCSVとは、SharePointリストの上部メニューにある、[エクスポート]から出力できるCSVファイルのことを指します。

「スキーマを含むCSV」とは

このCSVには、アイテムのデータだけでなく、リストの列名や列の種類など列の情報(スキーマ)が含まれています。

1行目に列の情報、2行目にヘッダー、3行目以降にアイテムの情報が記載されています

「スキーマを含むCSV」の中身

 

内部名とは

内部名とは列の隠し項目であり、リスト画面上から見える列名(表示名)とは異なる文字を設定できます。

内部名は以下の特徴があります。

  • リストの設定画面から内部名を確認できます。
    列の設定画面を開き、URLにある「Field=」以降の値が内部名となります。

    内部名
  • 列を作成する際に自動的に生成されます。

  • 一度設定された内部名は後から変更できません。

  • 半角英数字で列を作成すると、その名前がそのまま内部名になります。

    日本語や全角文字で作成すると、内部名はエンコードされた文字列になります。

  • 内部列は、Power AutomatePower Appsなど、他システムとの連携時に使用されます。

  • 列作成時に半角英数字で名前をつけ、その後表示名を日本語に変更することでエンコードされず判読性の良い内部名になります。

※内部名がエンコードされた文字列の状態で「スキーマを含むCSV」にエクスポートすると、CSVにはエンコードされた文字列のまま出力されます。
そのCSVを使用してリストを作成すると、エンコードされた文字列のままで内部名が設定されます。
(表示名も日本語のまま作成されます。)

日本語の文字列

 

「スキーマを含むCSV」を紹介する理由

「スキーマを含むCSV」を使用することで、従来のリスト移行方法には無いメリットがあります。
それは、列の構造(スキーマ)を引き継ぎながらデータ移行が簡単に行える点です。

SharePointリストの移行には様々な方法がありますが、従来の技術的難易度が低く簡単に移行できる方法では、内部名や列の設定を引き継いだ上でアイテムを移行することができませんでした。
内部名を含めた移行を行いたい場合、PowerShellPower Automateを用いて開発するか、サードパーティ製の移行ツールが必要でした。

しかし、技術的な難易度や費用面でのハードルがあり、移行作業に負担がかかることも多かったのではないかと思います。

一方で、添付ファイルが移行できない点や、一部の列の種類に制約がある点などの制限も存在します。
制限を踏まえた上で「スキーマを含むCSV」が使える場面を把握すると、活用しやすくなります。

次の章では、従来のリスト移行方法と比較し、「スキーマを含むCSV」がどのように活用できるのか、またどのような制約があるのかを詳しく解説します。

 

SharePointリスト移行方法の比較

SharePointのリスト移行には様々な方法がありますが、それぞれに特徴があります。

ここでは、「スキーマを含むCSV」を使用する方法と他の主要な移行方法を比較し、それぞれのメリットデメリットを見ていきます。

 

主な移行方法

  • 「スキーマを含むCSV」を使用する方法

  • CSVを使用する方法

  • Excelを使用する方法

  • 「既存のリスト」を使用する方法

  • 手作業での再構築する方法

  • Power Automateを使用する方法

  • PowerShellを使用する方法

  • サードパーティ製 移行ツールを使用する方法

 

各移行方法の特徴比較

以下の表で、各移行方法のできることとできないことをまとめてみました。

 

「スキーマ
を含むCSV」
を使用

CSVを
使用

Excelを
使用

「既存の
リスト」
を使用

手作業での
再構築

Power Automate
を使用

Power
Shellを
使用

サードパーティ製
移行ツール

内部名の移行可否

ビューの移行可否

リスト設定※2の移行可否

テナント間の移行可否

アイテムの移行可否

添付ファイルを含めたアイテムの移行可否

技術的な難易度

追加費用

なしなしなしなしなしなし※1なしあり

※1 ご利用のM365ライセンスによってPower Automateが付随し、追加費用無しで使用できます。 ライセンスの詳細は以下をご参照ください。
Microsoft 365 Enterprise のプランの比較 | Microsoft 365

※2 リスト設定とは、「リストの設定」にある「詳細設定」や「バージョン設定」などのリスト自体の設定のことを指します。

リストの設定

以下、各移行方法についてご紹介します。

  • 「スキーマを含むCSV」を使用した方法

    先の章(スキーマを含むcsvとは)でご紹介した通り、「スキーマを含むCSV」を使用してリストを作成する方法です。

    エクスポートやリストの作成は、画面の指示に従いクリックするだけで、簡単に行えます。
    画面をクリックするだけで簡単に行える移行方法の中で、唯一内部名の移行にも対応しています。

  • CSVを使用した方法

    CSVを使用してリストを作成する方法です。

    「スキーマを含むCSV」との違いは、リストのデータをエクスポートする時に「CSVにエクスポート」を選択することです。

    CSVにエクスポート

    このCSVには列のスキーマが含まれていません。
    「スキーマを含むCSV」の方法と同じく、エクスポートやリストの作成は簡単に行えますが、内部名の移行には対応していません。

    参考リンク:リストを作成する – Microsoft サポート

  • Excelを使用した方法

    リストをExcelファイルとしてエクスポートし、新しいリストの作成に使用する方法です。

    リストのデータをエクスポートする時に「Excel」を選択します。
    エクスポートしたExcelには列のスキーマが含まれていません。

    この方法にはエクスポートやリストの作成は簡単に行えますが、内部名の移行には対応しておりません。

    参考リンク:スプレッドシートを基にリストを作成する – Microsoft サポート

  • 「既存のリスト」を使用した方法

    リストの作成時、同一テナント内で参照できる既存のリストからリストを作成します。

    「既存のリスト」を使用

    リストの作成は簡単に行え、列の内部名や設定を含めた移行に対応していますが、リスト内のアイテムは移行されません。

    参考リンク:リストを作成する – Microsoft サポート

  • 手作業での再構築

    新しいリストを手作業で作成し、内部名や各設定を移行元と同じように設定する方法です。

    技術的には簡単ですが、対象が多い場合には手間がかかります。

  • Power Automateを使用した方法

    Power Automateでフローを構築することで、リストの列情報やアイテムを含めた移行ができます。

    ただ、テナント間の移行は非対応で、構築に関する知識や技術が求められます。

  • owerShellを使用した方法

    PowerShellのスクリプトを構築してリストを移行する方法です。

    内部名などの移行に対応しており、テナントをまたいだ移行も可能ですが、スクリプトに関する知識や技術が求められます。

  • サードパーティ製 移行ツールを使用した方法

    サードパーティ製の移行ツールを利用する方法です。

    GUIで設定が可能で、内部名やビューの移行、テナントをまたいだ移行にも対応しています。
    ただし、ツール購入が必要です。

これまでの比較から、「スキーマを含むCSV」は、簡単でありながら内部名の移行が可能である、新しい選択肢であることがわかります。

次の章では、「スキーマを含むCSV」を使用した具体的な移行方法について説明します。

 

「スキーマを含むCSV」の出力方法とリストの作成(移行)方法

この章では、「スキーマを含むCSV」を出力する方法と、それを使用してリストを作成する方法について説明します。

 

「スキーマを含むCSV」を出力する

SharePointリストにアクセスし、上部メニューの「エクスポート」を選択します。
展開されるメニューから、「スキーマを含むCSVにエクスポート」を選択します。

「スキーマを含むCSV」でエクスポート

これにより、「スキーマを含むCSV」が出力されます。

 

「スキーマを含むCSV」を使用してリストを作成(移行)する

リストを作成(移行)したいSharePointサイトにアクセスし、「+新規」ボタンを選択して展開されるメニューから「リスト」を選択します。

  • 「リストを作成」画面で「CSV」を選択します。

    リストの作成-1
  • 「CSVから」画面で、「ファイルのアップロード」ボタンを押下し、前の手順で出力した「スキーマを含むCSV」を選択します。

    「ファイルのアップロード」
  • CSVファイルを選択後、「カスタマイズ」画面に進みます。
    この画面では、インポートする列の選択や列の種類を設定できます。

    リストの作成-2_カスタマイズ
    作成できる列の種類
  • リストの名前を設定し、「作成」ボタンを押下します。

    注意:リストの作成時、移行元のリスト名は引き継がれません。

    リストの内部名を設定したい場合は、この画面でリスト名を英数字する必要があります。
    (内部名の詳細については、「内部名とは」を参照してください。)

    リストの作成-3_カスタマイズ
  • インポートが完了すると、自動的に作成したリストに遷移します。

 

さいごに

少し長くなったため、今回はここまでとさせていただきます。
後編では、「スキーマを含むCSV」を使用した移行方法の応用例と、移行時の制約についてご紹介します。

SharePointの移行やその他のご相談がございましたら、ぜひアーティサン株式会社までお気軽にお問い合わせください。

 

こちらも合わせて読みたい