如果符合条件,则将数据添加到行,否则忽略

时间:2016-07-31 06:05:03

标签: google-sheets

我的电子表格中包含来自Google表单的原始数据,如下所示:

    (Cost)      (Source)    (Frivolous) (Medium)    (Comments)
    A           B           C           D           E
1   15.94       McDonalds   Yes         Credit      was hungry
2   98.32       School      No          Check       Paid for textbooks
3   843.00      Hospital    No          Check       Surgery
4   0           asdff       Yes         N/A         Ignore this one woops   
5   
6   23.99       Dentist     No          Credit      Check up

我希望始终将此数据复制到不同的工作表,但只能复制与条件匹配的数据。在这种情况下,条件是FrivolousNo,这意味着我只想在这个单独的页面上跟踪有效的重要支出。

我的第二页我希望它们如下所示:

    (Cost)      (Source)    (Frivolous) (Medium)    (Comments)
    A           B           C           D           E
1   98.32       School      No          Check       Paid for textbooks
2   843.00      Hospital    No          Check       Surgery
3   23.99       Dentist     No          Credit      Check up

注意如何忽略空条目,同时忽略YesFrivolous的条目。

我将如何实现这一目标?我完全不知道这是如何工作的,因为我只能通过filter实现这一点,但这对此无效。

2 个答案:

答案 0 :(得分:2)

实际上,我在使用[google-sheets] ArrayFormula函数时遇到了一些问题,所以我在其数组形式中使用了一个带有SMALLINDEX function的老派公式。在A2中,

msc.begin()

向右和向下填充。

nonfrivilous

所以你确实这是正确的,这可以在[excel]中使用与[google-spreadsheet]相同的解决方案来解决。但是,使用[google-spreadsheet]不支持的AGGREGATE function更新[exce](2010+)有更好的方法,我确信[google-sheets]有更优雅的功能,我不是回想起这一刻。

查看Sheet13和Sheet14 here了解工作样本。

答案 1 :(得分:2)

我想说几句话来保护Google Spreadsheets,并展示一些有用的功能,但[excel]不支持它们。

<强>查询

首先,您可以使用简单查询:

=QUERY(sheet1!A:E,"select * where C = 'No'")

这个简短的公式将给出理想的结果,无需向右和向下填充。

过滤

实际上你也可以使用filter。这个功能似乎也有效:

=FILTER(sheet1!A:E,sheet1!C:C="No")

请阅读有关此功能的更多信息:

  1. Filter
  2. Query和完整Query Language Reference
  3. 您可以在Google电子表格中找到许多令人兴奋的事情。