SharePoint :プロパティの一括編集(モダンUI)

SharePoint Online では、モダンUI(新しい表示)の進化が着々と進んでいます。これまでも色々とクラシックUIにはない便利な機能を紹介してきました。対象指定リリースであっても Office 365 管理センターのメッセージ センターにメッセージが上がってから自分のテナントにその機能が反映されるのにタイムラグがある事からも、待っている間に忘れてしまって…ウッカリ新しい機能を見落としてしまいガチです。 今回もメッセージが上がってから機能が反映されるまでに期間が空いてしまったのでスッカリ忘れていた機能です。

リストやライブラリの列の値を一括で編集するには、これまではクイック編集を使っていたかと思います。しかし、クイック編集も結局はどこかの値を編集したらそこをコピーして別の値にペーストしていくような流れになると思います。また、クイック編集の場合は、そのビューに表示されている列しか編集できないので、全ての列でクイック編集したい場合は、それ用のビューを用意する必要があります。

モダンUIでは、一括編集したいアイテムを選択すると、ページを切り替えずに本当の意味での一括で作業が行えるようになりました。また、ビューに表示されている/いないは関係ありません。

では、まずはクイック編集のおさらいから。

▼このようなリストがあります。リストとしては他にもたくさん列がありますが、ビュー上では「タイトル」「選択肢」の2つしか表示させていません。

▼クイック編集にするとこのようにビュー上に表示されている列のみ編集となります。

Excelのように一括編集しようとすると、とりあえずどこか1つ編集してからコピペするようなイメージだと思います。

次にモダンUIの新機能のプロパティの一括編集です。

▼一括編集したいアイテムを全て選択し、右上の○の中にiと書かれたインフォメーションアイコン(←勝手に命名)をクリック。

▼右パネルが出てきて、プロパティの一括編集が可能な列が表示され、ここで編集できます。

▼例えば「選択肢」という列を「BBB」という値に選択して保存をします。

▼するとその場で選択したアイテムの「選択肢」という列が全て「BBB」という値に変わりました。

これはなかなか便利な機能ですね!

ちなみにこのリストには多くの列の種類で作成した列があります。

▼これだけの列があります。

一括編集をした場合に対象外になる列はあるかな?と思ったのですが、

▼このように今回作成した列の種類は全て一括編集できます。

ただし、「登録日時」「登録者」「更新日時」「更新者」など、一括じゃなくても編集できない列は当然編集できません。また、リストを作るとデフォルトで作成されている列、例えばカスタムリストだと「タイトル」列。これも一括編集はできないようです。

どんどん新機能が追加されてきていますね。ますますモダンUIを積極的に利用していきたくなります。

SharePoint 管理されたメタデータはExcelなどからクイック編集で一括コピペができない

リストにアイテムを大量に追加する際に、一つ一つ投稿していたら大変なので、クイック編集で一括コピペしたい場合があります。クイック編集で「管理されたメタデータ」列に追加する場合、すでに投稿済みの他のアイテムの値からコピペする事は可能ですが、Excelなどからコピペができません。これ、あとから出来ない事に気がついて焦るケースもあります。

【検証1:他の値をコピペはできる】

▼こんな感じで管理されたメタデータを作成します。

▼1件は普通に投稿し、クイック編集に。管理されたメタデータ列の値を選択しコピー。

▼新しいアイテムの行にペーストをすると、問題なくペーストできます。

▼クイック編集を完了しても問題なく投稿されています。

【検証2:Excelからコピペはできない】

▼同じリストに以下のExcelのデータをコピペします。

▼なんだかビックリマークのエラーが出ています。

▼ビックリマークをクリックするとエラー内容が。

▼もちろんこのままクイック編集を完了しようとしても保存できません。

【なぜ?】

管理されたメタデータの値と同じ文字列なのになぜExcelからコピペができないのか?作成した管理されたメタデータを見るとわかってきます。

カスケード分類できる事からもフラットではなく階層を持つ事ができ、それぞれの階層には同じ文字列は登録できませんが、別の階層には登録できます。例では「八百屋A店」の中に「キュウリ」を2個登録はできませんが、「八百屋A店」と「八百屋B店」の中に同じ「キュウリ」が存在していることがわかります。つまり、この列に「キュウリ」という文字列を単純に入力したところで、A店のキュウリなのか?B店のキュウリなのか?の判定ができませんよね。なので、登録したままの値では受け付けないんです。

では、どのような構造になっているのか?

▼通常の投稿でA店のキュウリとB店のキュウリを入力しましたが、見た目はわかりません。

▼クイック編集にして二つのキュウリの値をコピーしテキストエディタにペーストしてみます。

キュウリ|2c5d590a-ded0-4477-a93b-095c1c3f5843
キュウリ|ca8e4e7a-b256-4e7c-a302-8b0cffa830c4

このように「表示名|内部名」でペーストされました。(この|以下の文字列が「内部名」という表現で正しいかは不明です。)UI上では見えませんが、このように内部名と紐付いて一意の値になっています。このような仕組みになっているので、Excelからコピーしたデータでは、管理されたメタデータ列ではペーストする事ができません。

ちなみに、

▼「表示名|内部名」でExcelのデータを作成し、

▼クイック編集でコピペをするとペーストできます。

▼しっかり投稿されています。

とはいえ、管理されたメタデータの全ての値の「表示名|内部名」を調べる必要があるし、それを元にExcelデータを作成するのもダルい作業ですよね。

リストを作成する際にニーズとしてExcelでまとめたデータからクイック編集で大量にアイテムを作成する想定がある場合、気をつけなければいけませんね。