Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/google-sheets/3.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 在Google Sheets中使用arrayformula()在每行上查找一个min()值_Google Sheets_Google Sheets Formula_Min_Array Formulas_Google Sheets Query - Fatal编程技术网

Google sheets 在Google Sheets中使用arrayformula()在每行上查找一个min()值

Google sheets 在Google Sheets中使用arrayformula()在每行上查找一个min()值,google-sheets,google-sheets-formula,min,array-formulas,google-sheets-query,Google Sheets,Google Sheets Formula,Min,Array Formulas,Google Sheets Query,我有点被我一直在做的工作弄得一团糟,我在寻找一些澄清。由于某种原因,我的旧账户已经消失多年了,我道歉 我正在尝试为添加数据的每一行获取一个最小值。有两列需要首先转换数据,然后为每行的所有3列找到最低值 我尝试了多种方法,只需输入我为每一行创建的公式就可以了。 例如: =最小IFE124>0,E124*$E$6,IFF124>0,F124*$F$6,IFG124>0,G124 我尝试过使用其他示例,但是,我不熟悉查询。尝试在公式中添加简单的计算是令人困惑的。我尝试使用的示例: =QUERY(TRA

我有点被我一直在做的工作弄得一团糟,我在寻找一些澄清。由于某种原因,我的旧账户已经消失多年了,我道歉

我正在尝试为添加数据的每一行获取一个最小值。有两列需要首先转换数据,然后为每行的所有3列找到最低值

我尝试了多种方法,只需输入我为每一行创建的公式就可以了。 例如:

=最小IFE124>0,E124*$E$6,IFF124>0,F124*$F$6,IFG124>0,G124

我尝试过使用其他示例,但是,我不熟悉查询。尝试在公式中添加简单的计算是令人困惑的。我尝试使用的示例:

=QUERY(TRANSPOSE(QUERY(TRANSPOSE(A1:C), 
 "select "&REGEXREPLACE(JOIN( , ARRAYFORMULA(IF(LEN(A1:A&B1:B&C1:C), 
 "min(Col"&ROW(A1:A)-ROW(A1)+1&"),", ""))), ".\z", "")&"")),
 "select Col2")
添加时会出现多个问题。我想忽略空单元格和类似文本的标题。它不会写在文本上,也不会执行,这给了我一个关于覆盖值的错误

我尝试过编写一个=数组的公式,但不喜欢计算最小值。它对行进行计算

=ArrayFormula(IF(ISBLANK({E8:E;F8:8;G8:8}), "", added my formula here))
下面是我花了几个小时研究的东西,我相信问题在于选择MIN函数中的范围,这是导致问题的原因

=arrayformula(IF(LEN(E8:G)<>0, MIN( IF(E8:E > 0, E8:E*$E$6), IF(F8:F > 0, F8:F*$F$6), IF(G8:G > 0, G124) ),)
如果有办法的话,我真的很感谢你的帮助

链接:一个可视版本的样本,我作为我的实际工作表是超过500行长。

在O3单元中尝试一下

=ArrayFormula(TO_DOLLARS(index(transpose(query(transpose(E3:G18*{M5, N5, 1}),"select "&join("),","max(Col"&row(indirect("A3:A18"))-2)&")")),,2)))
看看这是否能带来预期的产出

在这种情况下,您将在列中有多个值,例如:G您可以尝试

=ArrayFormula(TO_DOLLARS(index(transpose(query(transpose(if(ISNUMBER(E3:G18), E3:G18, 99^99)*{M5, N5, 1}),"select "&join("),","min(Col"&row(indirect("A3:A18"))-2)&")")),,2)))

在O3单元中,尝试一下

=ArrayFormula(TO_DOLLARS(index(transpose(query(transpose(E3:G18*{M5, N5, 1}),"select "&join("),","max(Col"&row(indirect("A3:A18"))-2)&")")),,2)))
看看这是否能带来预期的产出

在这种情况下,您将在列中有多个值,例如:G您可以尝试

=ArrayFormula(TO_DOLLARS(index(transpose(query(transpose(if(ISNUMBER(E3:G18), E3:G18, 99^99)*{M5, N5, 1}),"select "&join("),","min(Col"&row(indirect("A3:A18"))-2)&")")),,2)))

请尝试对所有行起作用,直到底部:

=ARRAYFORMULA(TEXT(SUBSTITUTE(QUERY(TRANSPOSE(QUERY(TRANSPOSE(
 IF(E3:G<>"", {E3:E*M5, F3:F*N5, G3:G}, 999^99)),
 "select "&TEXTJOIN(",", 1,
 "min(Col"&ROW(A3:A)-ROW(A3)+1&")")&"")),
 "select Col2", 0), 999^99, ), "$#,###.00"))

请尝试对所有行起作用,直到底部:

=ARRAYFORMULA(TEXT(SUBSTITUTE(QUERY(TRANSPOSE(QUERY(TRANSPOSE(
 IF(E3:G<>"", {E3:E*M5, F3:F*N5, G3:G}, 999^99)),
 "select "&TEXTJOIN(",", 1,
 "min(Col"&ROW(A3:A)-ROW(A3)+1&")")&"")),
 "select Col2", 0), 999^99, ), "$#,###.00"))

它工作得很好,但是,当我有多个框,每个框都有标题时,它会给我一个覆盖错误。另外,我的普通表从第8行开始,而不是从第3行开始。所以我改变了这些值,假设它们没有区别=ArrayForMulaTextSubstituteQueryTransportSequeryTranspose IFE8:G,{E8:E*$E$6,F8:F*$F$6,G8:G},999^99,选择&TEXTJOIN,,1,minCol&ROWA8:A-ROWA8+1&,选择Col2,0,999^99,$,.00,如果我想让数字没有小数或不同的货币,只需删除.00并更改符号?还是使用CF?我只对一个盒子进行了测试,它工作得完美无缺。我只想让它跳过空行和包含文本的行。基本上,如果我重复我的示例两次,我需要继续并忽略标题,等等。它实际上是公式列H3:H中的标题,我需要忽略该标题。但是,当我有多个框,每个框都有标题时,它会给我一个覆盖错误。另外,我的普通表从第8行开始,而不是从第3行开始。所以我改变了这些值,假设它们没有区别=ArrayForMulaTextSubstituteQueryTransportSequeryTranspose IFE8:G,{E8:E*$E$6,F8:F*$F$6,G8:G},999^99,选择&TEXTJOIN,,1,minCol&ROWA8:A-ROWA8+1&,选择Col2,0,999^99,$,.00,如果我想让数字没有小数或不同的货币,只需删除.00并更改符号?还是使用CF?我只对一个盒子进行了测试,它工作得完美无缺。我只想让它跳过空行和包含文本的行。基本上,如果我重复我的示例两次,我需要继续并忽略标题,等等。它实际上是公式列H3:H中的标题,我需要忽略标题。在您共享的示例中,每行只有一个值,欧元、英国或美元。会一直是这样吗?如果是这样,答案就简单多了。如果没有,能否更改示例数据,使其包含具有多个值的行?否,每行的所有三列都可以有一个值。我只需要转换后每列的最低值。在您共享的示例中,每行只有一个值,欧元、英镑或美元。会一直是这样吗?如果是这样,答案就简单多了。如果没有,能否更改示例数据,使其包含具有多个值的行?否,每行的所有三列都可以有一个值。我只需要转换后每列的最低值。