google sheet 公式,如果“是”,则复制到其他 sheet

google sheet 公式,如果“是”,则复制到其他 sheet

我正在尝试弄清楚 Google Sheets 中的公式 - 如果单元格为“是”,则将相邻单元格复制到另一张表。有人可以帮忙吗?

答案1

你有:

yes  1
no   2
no   3
yes  4
no   5

您想要(在另一张纸上):

1
4

最简单的解决方案,但需要一些手动操作: 在主工作表中添加过滤器 过滤“是”答案 复制并粘贴到新工作表

脚本: 如果数据变化很大,并且您需要经常这样做,则可以使用 Apps Script 录制宏(Google 是您的好朋友)。这相当于 Excel 中的 VBA。

使用公式: 单元格中的公式“如果为真则复制”意味着包含公式的单元格必须更改另一个单元格中的值。这与电子表格的工作方式相反。想象一下,您正在将公式输入到要复制到的单元格中。此公式可以查找任何单元格并引用其值(而不是复制)。基本解决方案:

=IF(A1 = "yes", B1, IF(A2 = "yes", B2, IF(A3 = "yes", A3, "")))

当然,这种方法存在一些问题。它需要很长的嵌套 IF 语句(或 IFS 函数),并且您必须为数据集中的每一行键入 IF 条件和结果。最糟糕的是,下一个单元格不知道前一个单元格“查看”了多远。要解决这个问题,您需要使用可以返回第 n 个“是”结果的匹配或查找搜索函数:

n  value
1  *return 1st yes result
2  *return 2nd yes result

现在,如果您熟悉 VLOOKUP,您就会知道它只会返回第一个结果。但要做到这一点,您需要一些数组公式,并遵循此杰作https://infoinspired.com/google-docs/spreadsheet/find-nth-occurrence-in-google-sheets/

幸运的是,还有穷人的第 n 次查找 - 如果您有一个静态或单个查找值,例如“是”。在原始数据的左侧添加一列。您需要计算“是”出现的次数,以成为第二张表的查找索引:

Count  Condition    Value
1      yes          1
1      no           2
1      no           3
2      yes          4
2      no           5

A2 中的公式如下所示:

=IF(B2 = "yes", IF(A1 = "Count", 1, A1 + 1), IF(A1 = "Count", 0, A1))

在另一张纸上(A1 纸上)输入并抄下:

=VLOOKUP(ROW(), Sheet1!A1:C1000, 3, FALSE)

相关内容