複数の改行を追加して、複数の値が許可されている列を検索します

Dec 01 2020

複数の値が許可されているSharePointオンラインルックアップ列の改行に関して特定の質問があります。改行を介してルックアップから各値を分離したいと思います。

JSONフォーマットウィンドウで次のことを試しました。

{
  "$schema": "https://developer.microsoft.com/json-schemas/sp/column-formatting.schema.json",
  "elmType": "div",
  "txtContent": "=replace(@currentField,';','\n')"
}  

残念ながら、この構成では、「;」を置き換えることによって最初の値の後にのみ改行が許可され、他の値は以前と同じままです。

誰かがこれを修正する方法を知っていますか?よろしくお願いします。

回答

GaneshSanap Dec 01 2020 at 18:38

以下のJSONコードを使用して、各値を別々の行に表示できます。

{
   "$schema": "https://developer.microsoft.com/json-schemas/sp/v2/column-formatting.schema.json",
   "elmType": "div",
   "txtContent": "=join(@currentField, '\n')"
}

私の完全な答えを確認してください:複数選択のユーザー入力を(コンマではなく)別々の行で整理する

または、各値にフォーマットを適用する場合は、ここに示すように、JSONフォーマットでForEachとイテレーターを使用できます。

EchoDu_MSFT Dec 02 2020 at 07:18

手順に従ってください:

  1. 選択タイプ列を作成し、複数の値を許可する

  1. 選択フィールドで以下のJSONコードを使用してみてください。

    {"$ schema": "https://developer.microsoft.com/json-schemas/sp/v2/column-formatting.schema.json"、 "elmType": "div"、 "txtContent": "= join( @currentField、 '\ n') "}


Note:

  • join()は2つのオペランドを取ります。1つ目は配列(複数選択の人または選択フィールド)で、2つ目は区切り文字列です。
  • 区切り文字列で区切られた配列値の文字列連結を返します。

  1. リストに新しいアイテムを作成すると、次のような効果が表示されます。

JSONフォーマット、JSONフォーマットで使用できる演算子のリファレンス-演算子。

………………………………………………回答を更新…………………………………………

2つの方法があります:

1.すぐに使用できる機能を使用する

  • 特定のリストに移動し、ルックアップ列を作成します。
  • 次に、ページを[追加の列設定]セクションまでスクロールします。「複数の値を許可する」チェックボックスを選択してください。

2.リストビューのマルチルックアップ列で以下のJSONフォーマットを試して、データを垂直に表示します。

{
  "$schema": "https://developer.microsoft.com/json-schemas/sp/v2/column-formatting.schema.json",
  "debugMode": true,
  "elmType": "div",
  "children": [
    {
      "elmType": "div",
      "style": {
        "display": "block",
        "width": "100%"
      },

      "txtContent": "=join(@currentField.lookupValue, '\n')"
    }
  ]
}
JuanChavez Dec 16 2020 at 20:05

これを探している人のために...「参加」の代わりに「置換」機能を使用してください!私の場合、複数のルックアップ値は「;」で区切られた単一の文字列でした。それらを別々の行に分けるために私がしたことはこれでした:

{
  "$schema": "https://developer.microsoft.com/json-schemas/sp/column-formatting.schema.json",
  "elmType": "div",
  "txtContent": "=replace(@currentField,';',',\n')"
}

このソリューションでは、カラムの幅は関係ありません。アイテムは常に改行で区切られます。