如何评估 Google 工作表中的串联公式?

How to evaluate a concatenated formula in Google Sheets?

有什么方法可以使用脚本或其他方式计算 Google 电子表格中的串联公式吗?

我为 Google 财务函数创建了一个串联公式来获取每日汇率。这是因为我的日期和货币不断变化;我有时对获取 "usdinr" 或 "euraud" 感兴趣,而不是 "usdeur"。使用连接和一些基础脚本,我能够将以下公式作为文本粘贴到单元格中。所需要的只是一种执行以下字符串的方法。

"=GoogleFinance("usdeur","price",date(2013,12,1),date(2013,12,16))"

据我了解,表格没有 Excel 那样的 "EVAL" 功能。在工作表中,按 "Enter" 两次就可以做到这一点。有什么方法可以为此编写脚本吗?

您可以在不连接的情况下执行此操作:

=GoogleFinance(A10,"price",E3,E6)

针对 google 没有 evaluate() 的出色解决方法。我环顾四周,除了脚本之外,没有其他方法可以将公式作为一个 sheet 上的字符串,然后在另一个上使用该公式。事实上,我所看到的一切都表明你不能。如果任何阅读这篇文章的人在遇到适当的问题时可以重新发布,那将会很有帮助,因为我一定已经阅读了半打帖子说在我卷起我的袖子并完成它之前这是不可能的。 :) 它仍然有点笨拙,因为您需要在传播中使用两个单元格sheet 您希望公式执行,但这里是。

好的,一些设置。我们将使用公式作为字符串 SpreadsheetA 调用 spreadsheet,调用公式在 TabAA 上的选项卡,您要调用的 Spreadsheet 并执行所述公式 SpreadsheetB.我将使用 multi-tab 示例,假设您希望 SpreadsheetB 选项卡上的 A1:A5 的总和:TabBA 在 SpreadsheetB 选项卡上计算:TabBB 单元格A1.也叫spreadURL的sheetA:URLA.

因此,在 Spreadsheet A Tab: TabAA 单元格 A1 中输入 ="=sum(TabBB!A1:A5)",因此该单元格将显示:=sum(A1:A5 ).注意:您不需要任何 $ 公式。然后在Spreadsheet B, Tab: TabBB, cell A2 put: =Query(Importrange("URLA","TabAA!A1"),"select Col1 where Col1 <> ''").该单元格现在将显示 =sum(TabBA!A1:A5)。接下来,Spreadsheet B 选项卡的单元格 A1:TabBB,使用 B2 中的公式创建单元格的下拉列表(右键单击单元格 A1,select 数据验证,用于条件 select : List from range, 在右边的框中输入 B2)。该单元格现在应该对 SpreadsheetB、TabBA、范围 A1:A5.

求和

希望说的很清楚,我在这方面还是新手。同样重要的是,显然你只会在你想从 spreadsheetA 的多个公式中选择而不是 TabAA 的情况下这样做!A1 说你在 A2 中也有另一个公式所以你的查询将是 =Query(Importrange ("URLA","TabAA!A1:A2")。我理解在简单的情况下,你只需将公式放在你需要总和的地方。

编辑:我注意到,当我想使用带双引号的公式时,上述情况不起作用,因为当您将带双引号的公式用双引号括起来时,您会收到错误消息,因为您需要单引号双引号内。我正在尝试的示例:if(counta(iferror(query(B15:C,"select C where C = 'Rapid Shot' and B = true")))>0,Core!$C$18+$C$10&" / ",)&Core!$C$18+ $C$10&if(Core!$C$18>5," / "&Core!$C$18-5+$C$10,)&if(Core!$C$18>10," / "&Core!$C$18-10+ $C$10,)&if(核心!$C$18>15," / "&核心!$C$18-15+$C$10,) 在这种情况下,我将另一个公式放入 Spreadsheet A TabAA 单元格 A2 中,内容为 ="="&A1。然后,调整 spreadsheet B 中的导入范围引用以引用该单元格。

顺便说一句,这绝对有效,所以如果你不明白,请告诉我你在哪里遇到问题,我没有做很多合作,所以也许我没有说清楚或使用正确/最好的东西terminollagy 但我再次看到很多帖子说这是不可能的,没有人说他们找到了另一种方法。 Thanx ~ K to the D zizzle.

感谢您提供解决方法,它确实有效。根据您的说明,它看起来可以进一步简化。

  1. 在单元格 B1 中输入以下内容:="=sum(A1:A5)"
  2. 在单元格 C1 中设置数据验证和 select 带下拉选项的 B1。

现在 select C1 和 select 下拉列表中的公式,它将自动对 A1 到 A5 之间的任何值求和。

我有一个 sheet,我在其中为多个值创建了一个复杂的公式,并且这个过程成功了!

再次感谢您,因为我的工作中有数据被另一个程序提取,因此我试图避免使用脚本sheet。在这些情况下,脚本函数并不总是自动 运行。