当Smartsheet期望公式中的元素与所提供的不同时,公式将返回一个错误。下面是公式错误消息的列表,它们的原因,以及您可以实现的解决方案来修复这些错误。
#阻塞
导致
计算被阻塞,因为公式引用的单元格中至少有一个有错误。
决议
确定此公式引用的哪个单元格包含错误,这将更能说明问题。
#布尔预计
导致
公式位于特定类型的列(日期、数字、符号)中,返回值是不同类型的。
决议
将公式移动到不同的列,或将结果转换为适当的类型。公式结果可以通过添加空字符串转换为文本值。例如=TODAY() + ""将允许您在文本列中输入今天的日期。
#计算
原因
公式引擎仍在后台计算。
- 这通常意味着由于网络条件或浏览器的过度使用,您正在经历一个缓慢的错误。
- 它还可以表明您正在使用一个更大的公式和/或公式引用了一个单元格,该单元格通过公式或单元格链接引用了另一个单元格。
决议
通常,一旦计算完成,这个错误就会自动修正。
如果错误不能自行纠正,纸张上的慢度可能会受到几个不同因素的影响。一些主要因素:
- 浏览器速度-浏览器的速度可能是加载、导航和保存工作表时慢的主要原因之一。在我们的测试中,我们发现Smartsheet在使用谷歌Chrome时表现最好。如果它是一个选项,或者在故障排除时,尝试使用这个浏览器,看看它是否改善了您的响应时间。
- 高级功能-公式、单元格链接和条件格式的广泛使用会导致加载时间变慢。如果你的表格开始变慢,试着禁用条件格式规则,看看这是否是导致问题的原因。此外,考虑去掉公式列或单元格链接,这些可能不再需要。
- 表的大小-当表格变大时,性能可能会下降。适当时,移动行(更多信息移动行)到档案单上。
如果你使用交叉表格引用,你可能还希望确认表格没有接近100000格的引用限制。
#循环引用
导致
公式引用自己。循环引用可以是直接引用在公式文本本身的地方,也可以是间接引用在公式引用一个单元格的地方,然后这个单元格又引用回这个单元格。
决议
确定哪个引用是循环的。间接引用可以有很多层次。有时最简单的方法是复制公式并删除单元格引用,直到消除错误。这个消除的过程将帮助您看到哪个引用最终是循环的。
#接触预期
导致
联系人列表字段中的公式返回的数据类型不是文本或联系人。
决议
联系人列表字段中的公式只能返回文本或联系人数据类型。调整公式以返回其中一种数据类型,或将公式移动到另一种类型的字段(文本/数字、日期、下拉列表、复选框或符号)
#预计日期
导致
公式位于特定类型的列(日期、数字、符号)中,返回值是不同类型的。
决议
将公式移动到不同的列,或将结果转换为适当的类型。公式结果可以通过添加空字符串转换为文本值。例如=TODAY() + ""将允许您在文本列中输入今天的日期。
#除以零
导致
你的公式试图将一个量除以零(例如4 / 0提供一个除以零的误差)。
决议
如果公式要除以零,则使用IFERROR返回不同的值。例如,
=IFERROR(Value4 <> 0, 100/Value4, "")
#不平衡
导致
你公式中的括号不一致。开括号的数量与闭括号的数量不相同。
决议
检查公式中是否有多余的括号—根据需要添加或删除额外的括号。
#不正确的参数设置
导致
在以下情况下会出现此错误:
- 对于接受两个范围的函数:范围大小与函数不匹配。
- 函数缺少一个参数。
- 参数中有一个额外的函数。
决议
修正范围大小或参数,在公式中添加或删除参数。
#无效的列值
导致
公式包含或引用的数据类型与插入它的列类型不一致。例如,这个MAX公式被放置在文本/数字列,并在日期列引用其他值…
=MAX([到期日期]1,[到期日期]52)
...如果包含公式的列不是“日期”列类型,则不能返回范围中最近的日期。(见MAX函数关于MAX函数如何工作的更多信息。)
决议
对你的工作表做以下调整之一:
- 在另一列中键入公式,该列的类型与公式预期返回的值的类型保持一致。
- 在列的顶部右键单击列标题,然后选择Edit column Properties。将列更改为与公式预期返回的值类型一致的类型。
- 添加IFERROR到你的函数,这样它会返回一个不同的值,如果它遇到#INVALID COLUMN value错误,例如:=IFERROR(“不是一个数字!,最大([到期日期]1,[到期日期]5))
- 将公式包装在可以将其转换为预期数据类型的函数中。例如:=WEEKNUMBER(MAX([Due Date]1, [Due Date]5)放置在Text/Number列时,返回一个数字,该数字对应52周期间的最高日期的星期数字。(更多信息请点击这里。)
#无效的数据类型
导致
公式包含或引用不兼容的数据类型,如=INT("Hello")
决议
确保公式引用了正确的数据类型。
#无效的裁判
导致
对另一个工作表的引用名(在花括号中)不存在作为对另一个工作表的引用。
决议
要么将花括号内的名称更改为已经创建的对另一个工作表的引用的名称,要么创建对另一个工作表的新引用。
看到公式:参考其他表格中的数据有关此过程的更多信息。
#无效操作
导致
运营商(见创建和编辑公式有关可接受操作符的详细信息)的公式在Smartsheet中不支持或键入错误。例如,如果单元格包含25个或更少的单元格,这个IF语句返回文本“Low Stock”……
=IF(Quantity1 =< 25, "低库存")
...操作符“小于或等于”的顺序错误;正确的顺序是<=使公式=IF(Quantity1 <= 25,“Low Stock”)
决议
检查所有的操作员,以确保他们没有键入错误,并支持Smartsheet。看到创建和编辑公式有关可接受操作符的详细信息。最常见的原因是按错误的顺序输入<=(小于或等于)和>=(大于或等于)操作符组合。
#无效值
导致
公式包含一个函数参数范围之外的数字。例如,在文本字符串“Hello”中查找字符“H”的FIND公式的起始位置为100个字符……
=找到(“H”,“你好”,100年)
...由于字符串“Hello”有5个字符长,所以FIND不可能在中100个字符处开始查找字符“H”。只能接受1 ~ 5号号码。
决议
确保所有数字参数都在函数期望的范围内。
#嵌套标准
导致
您已经在SUMIF或COUNTIF函数中嵌套了条件。
决议
可以使用SUMIFS或COUNTIFS,因为可以包含多个条件而不需要嵌套。
#不匹配
原因
- VLOOKUP函数没有找到结果。
- 在这个范围内没有一个数字大于或等于VLOOKUP函数中的search_value。
决议
调整VLOOKUP函数的search_value或lookup_table,以便查找结果。(VLOOKUP)。
#预计数量
导致
公式位于特定类型的列(日期、数字、符号)中,返回值是不同类型的。
决议
将公式移动到不同的列,或将结果转换为适当的类型。公式结果可以通过添加空字符串转换为文本值。例如
=TODAY() + ""将允许您在文本栏中输入今天的日期。
#溢出
导致
公式遇到或计算出超出所支持的数值范围的值。对于数值,范围是-9007199254740992到9007199254740992。对于WORKDAY计算,最大天数为100万。
决议
在大多数情况下,此错误是由不准确或不完整的单元格引用引起的。检查你的配方并做出必要的改变。
#允许误差
导致
公式引用另一个工作表中的数据(在花括号中),但是没有人对包含公式的工作表以及包含被引用数据的源工作表有足够的共享权限。
决议
确保至少有一个人对包含具有editor级别或更高权限的公式的工作表共享,以及对包含具有viewer级别或更高权限的数据的工作表共享。
#裁判
导致
公式引用一个不存在的单元格,可能是由于行/列被删除。
决议
您的公式将需要手动更新。
# UNPARSEABLE
导致
公式有一个问题,使它无法被解析和解释。发生这种情况的原因有很多,比如拼写错误、操作符不完整、列名使用错误的大小写,或者使用单引号而不是双引号。
决议
确保单元格引用中所有列名拼写正确,操作符使用正确,公式中的任何文本字符串都用双引号(" ")括起来。
#不支持CROSS-SHEET公式
导致
CHILDREN、PARENT或祖先函数从另一个工作表引用数据(用大括号括起来),这是不受支持的。
决议
从该函数中删除引用。您可以创建对另一个工作表的引用,并手动选择所需的单元格。有关创建对其他工作表的引用的更多信息,请参见公式:参考其他表格中的数据.