我想使用列验证来确保某人输入了有效日期,但我还希望他们能够输入 TBD - 仅这两个选项。这可能吗?是否有一个自定义公式可以输入到列表设置中的列验证中?
答案1
我建议使用两列并修改默认视图。我们可以设置一个列表,以便用户可以输入日期或不输入日期。当我们查看列表(而不是编辑)时,如果用户输入了日期,我们将看到该日期。如果用户没有输入日期,我们将只看到文本“TBD”。
步骤 1:创建列
- 第 1 列:非必填的“仅限日期”类型日期时间字段
第 2 列:使用以下公式计算的列:
=IF(列 1="","TBD",TEXT(列 1,"dd mm yyyy"))
在此公式中,column1 是您的第一个 DateTime 列的名称。此外,验证结束时的日期格式可以更改以适合您的区域要求(例如,“mm dd yyy”)。
对于第 2 列,还要确保将“从此公式返回的数据类型”设置为“单行文本”。
第 2 步:修改列表视图
设置完两列后,您现在应该修改当前的默认视图,隐藏此视图中的第 1 列。完成此操作后,您将看到,在查看列表(而不是编辑)时,只有计算列会显示输入的日期或“TBD”。但是,当您编辑项目时,您将能够使用内置日历控件输入日期,或者直接留空。
答案2
您可以为单行文本字段添加下面的列验证。日期是字母数字,可以是12/10/2017
或d5/df/2df3
=IF(YourFieldName="TBD",TRUE,(AND(NOT(ISERROR(SEARCH("??/??/????",YourFieldName,1))),LEN(YourFieldName)=10)))