はじめに
Workato などの iPaaS 製品を利用する場合に、簡易的なデータベースとして SharePointのリストを利用することも多いと思います。
こちらの記事では既存の Excel ファイルや CSV ファイルをインポートしてリストを作成することでデータを一括登録する方法をご説明しました。この方法では列の内部名が自動採番されてしまい、利用しやすい名前にできないという問題がありました。
この記事では、列の内部名を利用しやすい名前にしたうえで、データの一括登録をする方法についてご説明します。
Excel のテーブルをエクスポート
SharePoint のリストは Excel のテーブルをエクスポートして作成することもできます。Excel のテーブルについてはこちらの記事を参照してください。
Excelのテーブルのセルを選択し、「テーブルデザイン」メニューから「エクスポート」「テーブルを SharePoint リストにエクスポート」を実行します。
「アドレス」にリストを格納したいサイトの URL を設定し、リストの「名前」を入力して「次へ」をクリックします。
列とデータ型の割り当てが表示されます。インポートの時とは違い、ここではデータ型の変更はできません。「URL」のカラムを見ると、「ハイパーリンク」が割り当てられています。「ハイパーリンク」の場合、リスト作成後に変更できないため、ここではいったんキャンセルしてデータを修正します。
「URL」のカラムを選択し、右クリックメニューから「ハイパーリンクの削除」を選択します。
再度エクスポートを実行すると、今度は「URL」のカラムが「テキスト(単一行)」になりましたので、そのままエクスポートします。
エクスポートが完了すると、データが登録された状態でリストが作成されます。
列の内部名を確認してみます。
エクスポートで作成した場合、英数字の名前はそのまま内部名として設定されています。
なお、エクスポートでリストを作成した場合、通常の方法で作成したときとは違う点がいくつかありますので、注意が必要です。
- 既定のビューの設定が異なる
- 初期状態でグリッドビューでの編集が有効になっている
- 「種類」列が表示されている
- コメント機能が無効になっている
1 については、「新しいビューを作成する」で作成した新しい「パブリック ビュー」を「既定のビュー」にしたうえで、「種類」列を非表示にすることで、通常の方法で作成した場合と同様のビューにすることができます。
2 については、いまのところ対応方法はないようです。
本来であれば、「列の詳細設定」の画面の「添付ファイル」と「フォルダー」の間に「コメント」が表示されるはずですが、表示されません。
コメント機能を利用したい場合は、他の方法で作成する必要があります。
また、「複数行テキスト」の列にデータがある場合にも注意が必要です。
見た目上、期待通りのデータが格納されているように見えますが、編集状態にすると、実際には改行が「<BR>」に変換されていて HTML として格納されていることがわかります。
「列の編集」の「その他のオプション」で「拡張リッチテキストを使用」をオフにすることで、通常のテキストに戻すことができます。
ただ、このとき、改行の情報は失われてしまいます。そのため、後述の Excel のデータの貼り付けなどを利用して、回避する必要があります。
Excel のデータを貼り付け
SharePoint のリストは実は Excel のデータを貼り付けることができます。
ただし、貼り付けを行うときの操作には多少コツが必要となります。
1.「グリッドビューで編集」状態にします。
2. 貼り付け先のセルをフォーカス状態にします。データを追加したい場合は、「+新しいアイテムを追加」をクリックして貼り付け先の行を作成してから、セルをフォーカス状態にします。
3. Excel からコピーしたデータを貼り付けます。
先程、コツと書きましたが、下記のような注意点があります。
セルが編集状態になっていると、全てのデータが編集状態のセルに貼り付けられるため、期待した結果が得られません。
セル以外にフォーカスがあると貼り付けられません。見た目上セルにフォーカスが当たっていても、実は別の所にフォーカスがあるケースもあります。この図の状態はセルにフォーカスが当たっているように見えますが、実際にはテーブル名の横の空きスペースにフォーカスがあるため、データを貼り付けられません。
また、この方法は大量データの取り扱いには向いていません。
ソフトウェアの境界と制限 (SharePoint Server 2016 および 2019)には「一括操作に最大100個までのアイテムを選択できます。」とありますが、貼り付け時にはこの制限はかからないようです。
しかしながら、大量のデータを扱う場合、レスポンスが悪くなったり、不安定になったりするため、100件程度ずつ数回に分けるか、Workato を利用してインポートすることをおすすめします。Workato を利用した CSV ファイルのインポートはこちらの記事を参考にしてください。
まとめ
まとめると、以下のようになります。
- SharePoint では、Excel ファイルのテーブルをエクスポートしてリストが作成できる
- 列の型は自動で判別されるため、必要に応じて事前にデータの整形が必要
- 複数行テキストについては、データが HTML に変換されるため注意が必要
- テーブルのカラム名を英数字にしておくことで、列の内部名を利用しやすいものにできる
- 通常の方法でリストを作成した場合と一部差異があるため、注意が必要
- SharePoint のリストには Excel のデータを貼り付けられる
- 大量データの取り扱いには適していない
おわりに
この記事では、Workato などで SharePoint のリストを利用するために、内部列名をわかりやすくしたままデータを一括登録する方法についてご説明しました。
SharePoint には便利な機能が多くありますが、作り方によって一部動作が異なる場合もありますので、注意が必要です。
Workatoの導入・導入後の活用などでお困りの場合、Workatoリセラーにご相談する方法もございます。お困りごとがございましたら、認定リセラーの日立ソリューションズへ是非ご相談ください。
参考リンク
-
株式会社 日立ソリューションズ
-
Microsoft 公式サイト