2014-09-15 2 views
0

Я создал столбец в Sharepoint под названием Key, который будет содержать уникальное значение. То, что я хочу, чтобы это уникальное значение было, - это содержание моего поля «Term» минус белые пробелы с использованием функции «Вычисленный столбец». Таким образом, термин Advanced Forward будет иметь значение Key для AdvancedForward. Можно ли сделать это? И если да, как это можно сделать?Sharepoint 2010 вычисляет значение по умолчанию столбца

Заранее благодарен!

ответ

1

Есть! После того, как я изменил тип столбца, чтобы быть вычисляемый столбец это было довольно просто, то:

=REPLACE([Term],FIND(" ",[Term]),1,"") 
0

Увы функция REPLACE заменяет только первую находку (начиная с символом 1 в функции) (see Office Support: REPLACE function)

Так "Привет мир!" с вашей функцией сводится к: «Он l l o o o r l d!» (только первое место заменено)

В SharePoint нет функции SUBSTITUTE, поэтому единственный способ избавиться от множества пробелов - это вставка функции REPLACE.

Так что «H e l l o o o r l d!» может быть сведено к «Hel l o Wo r l d!» (2 места заменены) с одной функцией

REPLACE(
    REPLACE(
     Term 
     ,FIND(" ",Term) 
     ,1 
     ,"") 
    ,FIND(" ",REPLACE(
        Term 
        ,FIND(" ",Term) 
        ,1 
        ,"") 
     ) 
    ,1 
    ,"") 

Для каждого дополнительного места должны быть удалены, вы должны заменить все вхождения

Term 

С

REPLACE(Term,FIND(" ",Term),1,"") 

За 7 пространств вы в конечном итоге с символом Формулы 3688; поскольку вычисленный столбец может содержать только 4000 символов; единственный способ уменьшить количество пробелов - продолжить результат в другой расчетной колонке (цепочки)