「クイック編集」について
SharePoint サポートの 末崎 (スエザキ) です。
今回、初めてブログへ投稿をさせていただきます。
本稿では、SharePoint のリストやライブラリを編集するための機能である 「クイック編集」 にフォーカスを当てていきます。
「クイック編集」とは何か
そもそも、「クイック編集」とは何か、何ができるのか、ということからご説明していきたいと思います。
前述のように、サイト内のリストやライブラリ内のデータを編集し、Excel などからのデータを一括で登録したり編集することができます。
ご存知の方もいらっしゃると思いますが、以前の SharePoint では、「データシートビュー」として実装されていた機能になります。
つまり、「データシートビュー」の代替機能として SharePoint 2013 から「クイック編集」が実装されています。
なお、SharePoint 2013 にもビューとして “データシートビュー” (クイック編集と同様) が存在するため、本投稿では以下のように表記させていただきます。
以前の SharePoint:「データシートビュー」
SharePoint 2013 :「クイック編集」
「 データシートビュー」 が代替された経緯
セキュリティ上の懸念がある ActiveX サポートの優先度を下げる方針がインターネット標準となっている状況があります。
これは、SharePoint がサポートするブラウザ全般においても同様の方向性となります。
このため、端末の Office アドオン (AcitveX) に依存した「データシートビュー」から、JavaScript ベースの「クイック編集」へ代替されています。
「 データシートビュー 」 と「クイック編集」の違いについて
上述のように、「データシートビュー」 と「クイック編集」では実装が完全に変わっているため、代替機能ではあるものの、できることに多少の違いがあるのが実情です。
・ディスカッション掲示板の編集に対応しない (グレーアウト)
・リストの一括登録に対応しきれていない
登録元のデータに改行が含まれている場合、「クリップボード内のデータの形式を認識できません。」ポップアップが表示されデータの登録ができません。
参考情報
「データシートビュー」 ではポップアップが表示されず、「クイック編集」 ではポップアップが表示されます。
これは、それぞれのコンポーネント (ActiveX で公開されたリッチ クライアント コントロールと JavaScript エンジン) のクリップボードの対応形式の差異によるところです。
「データシートビュー」 では、スプレッドシートのセルのスタイルやプロパティも含めた形式でクリップボード経由でデータをコピーすることができます。
しかしながら、JavaScript の場合、クリップボード経由では "文字列" でデータを受け渡すことに限定されます。
"文字列" でデータを受け渡す際の具体的な処理は以下の通りです。
以下はコピー元のエクセルファイルの文字列です。
簡易表記で以下のように表します。
--------------------------------------------------
列1 列2
行 1 クイック編集 改行含む
行 2 データ
--------------------------------------------------
上記のようなデータをコピーすると、クリップボード内のオブジェクト (テキスト形式) として下記のようなデータが格納されます。
--------------------------------------------------
クイック編集\t\"改行含む\nデータ\"
--------------------------------------------------
\n で行を分割し、\t で列を分割するように実装されているため、貼り付け時にデータは以下のように成形されます。
--------------------------------------------------
列1 列2
行 1 クイック編集 改行含む
行 2 データ
--------------------------------------------------
以下はクリップボードからテキスト形式でデータを取得した結果です。
行ごとの列の数が一致していない状況です。
行ごとが保持する列の数に相違がある場合、「クイック編集」 は、ポップアップを表示させる動作として実装されています。
上記は現在 (2015/10/15) の製品の動作です。ダブルクオーテーションに対応していない箇所については開発部門にフィードバックを行っております。
その他の代案について
「クイック編集」は、Office に依存せずに動作することに利点がありますが、操作端末に Office がインストールされている場合は「Access で開く」を利用することでご要望を満たせるかもしれません。
上述したような 「データシートビュー」 で利用できていた操作は実現可能でした。
以下、SharePoint 2010 の公開情報ですが、SharePoint 2013 においても参考にしていただけます。
タイトル:SharePoint 2010 リストを Access 2010 と同期する
なお、Office 2010 Service Pack 2 (以降の更新プログラムの適用なし) を利用している場合、ブラウザーより [Access で開く] メニュー クリック時にエラーになってしまう問題がります。
ご使用の際には下記サポート技術情報に記載された修正プログラムを適用する必要があります。
Microsoft Update で Office の更新プログラムを適用している環境には下記パッチはすでに適用されているため、この問題の影響はございません。
タイトル:Office 2010 の修正プログラム パッケージ (Owssupp x none.msp): 2013 年 12 月 10 日
アドレス:https://support.microsoft.com/ja-jp/kb/2553170
今回の投稿は以上です。