ARRAYFORMULA中的SWITCH功能

问题描述 投票:0回答:1

样本sheet链接。第36行有关公式。

下面的公式按预期工作(样本的绿色背景)。

=ArrayFormula(IF(ISNUMBER(X_Data),IF(X_Data>VLOOKUP(X_Dates,X_Times,2,TRUE),INT(24*4*(X_Data-VLOOKUP(X_Dates,X_Times,2,TRUE))),0),0))

虽然下面的公式(添加了简单的SWITCH)不起作用(样本上的红色背景)。

=ArrayFormula(IF(ISNUMBER(X_Data),IF(X_Data>VLOOKUP(X_Dates,X_Times,2,TRUE),SWITCH(INT(24*4*(X_Data-VLOOKUP(X_Dates,X_Times,2,TRUE))),1,10,100),0),0))

第二个公式给出一个#VALUE错误消息“函数MINUS参数1期望数值。但'审计'是一个文本,不能强制转换为数字。”但是当我读到它时,所有文本值都不应该到达SWITCH语句,这可以通过第一个按预期工作的公式来确认。

我开始认为这是Sheets / SWITCH中的BUG。

注意:我可以使用嵌套的IF语句获得我的预期结果,但这使得公式非常复杂,所以我尝试使用SWITCH,因为它只在条件中引用“数据块”一次。

google-sheets
1个回答
1
投票

SWITCH()IFS()SUMIFS()和其他类似的S函数在ARRAYFORMULA()中不起作用。

© www.soinside.com 2019 - 2024. All rights reserved.