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 - Fatal编程技术网

Google sheets 若数据符合条件,则向行中添加数据,否则忽略

Google sheets 若数据符合条件,则向行中添加数据,否则忽略,google-sheets,Google Sheets,我的电子表格中有来自谷歌表单的原始数据,如下所示: (Cost) (Source) (Frivolous) (Medium) (Comments) A B C D E 1 15.94 McDonalds Yes Credit was hungry 2 98.32 School No Chec

我的电子表格中有来自谷歌表单的原始数据,如下所示:

    (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
    (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
我希望此数据始终复制到不同的工作表,但仅复制与条件匹配的数据。这种情况下的条件是,如果
Frivolous
No
,这意味着我只想在这个单独的页面上跟踪有效的重要支出

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

    (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
    (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
请注意,空条目是如何被忽略的,并且在
琐碎
下带有
Yes
的条目也会被忽略


我将如何实现这一点?我完全不知道这将如何工作,因为我只能通过
filter
来实现这一点,而这将不适用于此

实际上,我在使用[google sheets]ArrayFormula函数时遇到了一些问题,所以我使用了一个老式的公式和它的数组形式。在A2中

=iferror(index(Sheet13!A$1:A$99, small(index(row($1:$99)+(Sheet13!$C$1:$C$99<>"no")*1E+99, 0, 0), row(1:1))), "")
=iferror(索引(Sheet13!A$1:A$99,小)(索引(行($1:$99)+(Sheet13!C$1:$C$99“否”)*1E+99,0,0),行(1:1)),“”)
从右到下填充

事实上,你是正确的,这可以在[excel]中用与[google电子表格]相同的解决方案来解决。然而,在较新的[EXE](2010+)中,使用[google spreadsheet]不支持的高级方法,我确信[google sheets]具有更优雅的功能,我现在不想回忆起这些功能


查看Sheet13和Sheet14以获得工作示例。

我想说几句话为谷歌电子表格辩护,并展示一些可以工作的强大功能,但[excel]不支持这些功能

查询

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

=QUERY(sheet1!A:E,"select * where C = 'No'")
这一个简短的公式将给出所需的结果,不需要从右到下填充

过滤器

实际上,您也可以使用
过滤器
。该功能似乎也能工作:

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

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

  • 满满的

  • 你会发现在谷歌电子表格中可以做很多令人兴奋的事情。

    那么,为什么数据► 自动筛选工作?不幸的是,我在谷歌文档上,所以我需要一种基于公式的方法。文档中的
    筛选
    的唯一选项是手动筛选,每次将新数据放入电子表格时都必须进行手动筛选。您已将问题标记为[excel]。我将为您重新标记它,以便您可以得到一个有针对性的答案。我理解,但这两个平台非常相似,您很少会发现两者之间存在脱节。当然,有某种数组公式可以做到这一点,这对于高级excel用户来说是完美的回答?好吧,一个条件匹配来逐步显示第一、第二、第三等匹配记录正好是其中一个时间。哇,这是一个疯狂的公式。章节
    *1E+99
    的含义是什么?其目的是什么?另外,如果你能允许进入谷歌文档文件,我会非常感激。到目前为止,这个公式在我放置它的单元格中输出了一个
    double
    值,但我猜我的数据并没有以某种方式完全对齐。实际上,你是在将一系列匹配的行号传递回外部索引函数。与column=“no”不匹配的任何行的行号中都会添加一个1,后跟99个零。这不是一个小数目(实际上是一个非法的行号)。填写时,右边的行(1:1)将1、2、3、4等传递给small的k参数。感谢您的解释。它工作得很好。然而,有一个问题。我的一列是交易日期。例如,
    2016年7月30日
    。此公式将新工作表上的内容解释为
    42579
    。我认为这是由于
    1E+99
    ?在这种情况下可以做什么?有趣的事实-因为Lotus是首要的(通常是事实上的标准)电子表格程序,他们把1900年作为闰年(每100年,通常的闰年不是一年)包括Excel在内的所有电子表格程序都必须故意包含相同的错误,否则它们无法保持与Lotus的跨平台兼容性。因此,由于Lotus的失误,自1900年2月29日以来,所有的电子表格程序都有一个,而实际上不应该有一个。感谢[google sheets]特定的followup Max.tbh,我自己的公式知识太具体了。难以置信。您可以在Google文档中执行SQL命令吗?那太疯狂了。谢谢你,非常感谢你。我真的很感激。