当前位置: 首页 > 知识库问答 >
问题:

Google Sheets:将公式复制到列中的所有单元格

李云
2023-03-14

当我将公式添加到google工作表时,它们工作正常,但当我添加新行时,公式不会被复制。为了克服这个问题,我找到了公式数组。这适用于简单的应用,例如在单元格D4中,添加了以下公式

=ARRAYFORMULA(if(isblank(B4:B), ,B4:B*C4:C))

然而,当公式变得更复杂一点时,它就崩溃了。

=ARRAYFORMULA(if(and(isblank(B4:B),isblank(C4:C)), ,B4:B*C4:C))

这仍然是一个非常简单的公式,似乎打破了,而我的工作表中的公式通常更棘手,例如

=if(Y5="","",filter('World Clock'!B:B,'World Clock'!A:A=Y5))

它读取单元格Y5的数据(这是我手动输入的时区的名称),并查找另一张名为“世界时钟”的表,其中包含这些时区中当前时间的时区和公式列表,并将该公式复制到此床单。

有人知道让它工作的公式吗?我知道有一种方法可以通过脚本来实现,我相信我自己也能解决这个问题,但是如果我能得到数组公式或类似的东西,那会更好,因为我已经在这个文件中运行了很多脚本,它开始变慢了。

共有1个答案

萧阳波
2023-03-14

AND()和OR()不能与ARRAYFORMULA()一起工作,因为它在整个数组中执行AND()/OR()方法。

如果要执行和/或每个阵列。使用*=和()=或()。

示例:

和:=ARRAYFORMULA(if(isblank(B4:B)*isblank(C4:C),,B4:B*C4:C))

或者:=ARRAYFORMULA(如果(isblank(B4:B)isblank(C4:C),,B4:B*C4:C))

输出:

如果您想在您的FILTER()公式中应用ARRAYFORMULA(),您可以在试用表A2中使用此公式

=ARRAYFORMULA(if(B2:B="","",Vlookup(B2:B,'World Clock'!A:B,2,false)))

注意:您需要删除从A3开始添加的其他公式,因为它会阻止array公式()单元格写入。

 类似资料:
  • 我正在处理谷歌表格结果数据,这些数据被放入谷歌表格选项卡,我添加了一列来计算测验分数的百分比,然后在计算完成百分比的同一张表格中被拉到跟踪选项卡上。现在,无论我尝试了哪个公式,百分比列都显示为空白字段。我想知道是否有一个不同的公式将工作,将自动适用于列时,新的响应被添加?或者谷歌脚本是更好的选择吗? 我想保持原始结果数据在同一张表上,因为它正在将所有的测验编译成一张谷歌表,其中一个标签拉动百分比以

  • 使用1列中列出的名称,我需要在多个工作表中重新显示相同的名称列表,以过滤信息并添加更多信息。这是一个非常复杂的谷歌表单,否则我会分享它。我想我会制作一个模型表,但模型表正是我想要的: 列C是原始问题,它查找第一、第四、第七等字段,因为结果字段在这些点合并。D列是尝试的解决方案,它接受所有字段,在每个字段之间添加缓冲区标点(“-”),然后将其转置拆分。 我在错综复杂的表格中尝试了完全相同的方程式,但

  • 问题内容: 给定 我可以复制所有项目到做 有没有更惯用的方法来做到这一点? 仅适用于切片(并作为源)。 问题答案: 这对我来说似乎是一种完美的方法。我认为将一张地图复制到另一张地图并不足以提供单线解决方案。

  • 这是一个非常基本的问题,我似乎找不到答案。 我有一个这样的数据帧,叫做df: 然后我从df中提取所有行,其中列'B'的值为'B.2'。我将这些结果分配给df_2。 df_2变成: 然后,我将列B中的所有值复制到名为D的新列中。使df_2成为: 当我执行这样的任务时: 我得到以下警告: 试图在数据帧切片的副本上设置值。尝试使用。loc[row\u indexer,col\u indexer]=改为v

  • 本文向大家介绍将Java HashSet的所有元素复制到对象数组,包括了将Java HashSet的所有元素复制到对象数组的使用技巧和注意事项,需要的朋友参考一下 声明一个HashSet并添加元素- 要复制所有元素,请使用方法- 以下是将所有元素复制到HashSet到对象数组的示例- 示例 输出结果

  • 我正在使用Gson 2.8.1+(如果需要,我可以升级)。 如果我有JSONObject: ...如何有效地将此转换为表单: