Формула, которую я использую:
=IF((DATEDIF(Todaycalc,[TERMINATION DATE],"d"))<0,"Expired","")
но, хотя он рассчитывает для НЕТ, я получаю ошибку #NUM для части, которую я хочу вернуть как "просроченный". вычисляемое поле устанавливается в текст.
Как @thisChrisKent сказал, что вы не можете использовать трюк [Today] без каких-либо серьезных обходных путей - он просто не работает, как и следовало ожидать .
У вас есть несколько вариантов для создания такого динамического представления.
Преобразование веб-части представления списка (LVWP) в Веб-часть представления данных (DVWP) и добавление форматирования через дизайнер SharePoint и / или XSLT / JavaScript
Добавьте javascript в веб-часть редактора контента, чтобы применить форматирование - Кристоф является отличным источником для такого рода вещей, которые вы можете адаптировать для своих нужд.
Продукты сторонних производителей и пользовательские вычисляемые столбцы, такие как Маркер , Последующие действия , Corus Works и другие (отказ от ответственности - первая ссылка от моей собственной компании)
Я не уверен, что означает элемент TodayCalc в вашей функции DATEDIF. Если это столбец, то он должен быть в скобках [Todaycalc]. Если вы пытаетесь использовать формулу TODAY для возврата текущей даты, вы не можете использовать это (или ME) в вычисляемых столбцах.
TodayCalc
DATEDIF
[Todaycalc]
TODAY
ME
Есть хитрость, чтобы заставить это "работать", когда вы используете столбец с именем Today, используйте его в формуле, а затем удалите его. Но это глупый трюк, поскольку он по-прежнему рассчитывается только при создании / изменении элемента. Вы также можете использовать Модифицированный столбец .