Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/arduino/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Google sheets 考虑到专栏的推理:Don';“我不知道如何访问”;这";价值_Google Sheets_Google Sheets Formula - Fatal编程技术网

Google sheets 考虑到专栏的推理:Don';“我不知道如何访问”;这";价值

Google sheets 考虑到专栏的推理:Don';“我不知道如何访问”;这";价值,google-sheets,google-sheets-formula,Google Sheets,Google Sheets Formula,我正在努力做到以下几点: 每行 如果单元格A包含文本“abc”,则在B列和 如果列B上的值大于0:03:00,则返回0.9 否则,如果列B上的值小于0:03:00且>00:01:00,则返回0.6 否则返回0.3 将返回值与所有其他值相加 结果应该是: =IF(ISNUMBER(FIND("abc",INDIRECT(""&$A16&""&"!$D$2:$D"))),IF(INDIRECT(""&$A16&""&"!$D$2:$D")>"

我正在努力做到以下几点:

  • 每行
  • 如果单元格A包含文本“abc”,则在B列和
  • 如果列B上的值大于0:03:00,则返回0.9
  • 否则,如果列B上的值小于0:03:00且>00:01:00,则返回0.6
  • 否则返回0.3
  • 将返回值与所有其他值相加
结果应该是:

=IF(ISNUMBER(FIND("abc",INDIRECT(""&$A16&""&"!$D$2:$D"))),IF(INDIRECT(""&$A16&""&"!$D$2:$D")>"00:0300,???,???),?etc??)
???是丢失的零件。另外,
INDIRECT()
可以删除以进行测试,但问题是???部分我不知道如何得到IF语句的结果以及如何处理它。我想我不知道如何处理列。

您可以使用“数组公式”在excel中进行类似的查找

=SUM(IF(ISNUMBER(FIND(“abc”),A2:A100)),LOOKUP(B2:B100,{0,1,3}/1440,{3,6,9}/10))

按CTRL+SHIFT+ENTER键确认

或此版本的IFs[已编辑]

=SUM(如果(ISNUMBER(FIND(“abc”),A2:A100)),如果(B2:B100>=“0:03”+0,0.9,如果(B2:B100>“0:01”+0,0.6,0.3)))

在谷歌电子表格中使用此版本

=arrayformula(总和(如果(ISNUMBER)(查找(ëabcë,A2:A100)),如果(B2:B100>=ë0:03ë+0,0.9,如果(B2:B100>ë0:01ë+0,0.6,0.3ë);)

如果在A列的文本中找到“abc”,并且B列>=0,但<0:01,0.6,则每行的总数将增加0.3。其中,如果B>=0:09,则B>=0:01和<0:03和0:09

使用查找可以更容易地避免多个IFs,但我不确定它是否在边界上为您提供了正确的值,这在第二个版本中更容易调整。如果需要,可以调整范围长度并添加间接长度


注意:对第一个条件使用FIND意味着公式将在文本中的任何位置查找“abc”(区分大小写),如果您只想在没有其他文本的情况下精确地检查“abc”,则可以使用range=“abc”[不区分大小写]或精确(范围“abc”)[区分大小写]

如果A不包含“abc”你想退货什么?如果A是一个数字返回。03?我完全同意你的说法,但我不得不说IF版本在Google Spreasheet上不起作用,或者至少对我来说不起作用。你测试过了吗?根据我的数据,我得到的只是一个0.3,就像它丢弃了除最后一个之外的所有结果一样。根据我获得的一些测试数据0您是正确的mobinoob,我遗漏了第二个公式中的一个重要部分-我现在已编辑该公式以在Excel中工作。在googledocs中,你可以使用相同的公式,但用arrayformula包装,以使其正确工作-我也添加了这一点…只有2+0?它起作用了!你能详细说明一下原因吗?(关于Arrayformula,我表示歉意。我读过,但不确定)我使用
“0:03”
表示3分钟,但它本身只是一个文本字符串,添加+0(或*1或类似值)将转换为实际时间值-您也可以使用时间函数,如
time(0,3,0)
或者因为一天有1440分钟
3/1440