在电子表格文档之间仅导入某些行


12

文档1有很多行数据。

如何仅将C列中具有特定值的那些行导入文档2?

Answers:


15

基本:

这不像使用该IMPORT功能正常导入那样简单。使用此功能,您只能执行导入:

=IMPORTRANGE("key","range")

在“范围”字符串内添加函数(如SUM或)FILTER将导致错误。必须使用以下QUERY功能找到解决方案:

=QUERY(IMPORTRANGE("key","range"),"SELECT * WHERE Col1='value'")

要么

=QUERY(IMPORTRANGE("key","A:Z"),"SELECT * WHERE Col1 contains 'value'")

注意:

在WHERE之后,列定义必须是第一个字母大写,然后是小写。Col将起作用,COL或col将不起作用。

订购:

导入后,您可以使用以下ORDER BY子句对结果进行排序:

=QUERY(IMPORTRANGE("key","A:Z"),"SELECT * WHERE Col1 contains 'value' ORDER BY Col1")

选择列:

因此,该IMPORTRANGE功能无法执行选定的列,只能执行一个范围块。解决此问题的方法是使用QUERYfunction SELECT子句:

=QUERY(IMPORTRANGE("key","A:Z"),"SELECT Col1, Col2, Col3 WHERE Col1 contains 'value' ORDER BY Col1")

参考文献:


1
@ user2338585请标记答案,以便将来的访客注意!祝好运。
雅各布·扬·图因斯特拉

嘿@雅各布-非常感谢!这是一个了不起的文章...我正在尝试做与此非常相似的事情,但是要多做一步...我希望通过目标电子表格中单元格的值来设置主数据的选择。 。即在目标工作表的A列第2行中,我有一个值(例如1000023),并且我希望从源电子表格中的匹配行中导入列值...在您选择的列示例中使用单元格A2进行了尝试,使用了大量引用不同的组合。令人沮丧的是,我在编辑公式时突出显示了A2的值,但不会使用它
。。–朱利安·希金森

3

遇到了同样的问题:这就是我最终使用的东西。

= iferror(QUERY(IMPORTRANGE(“ https://docs.google.com/spreadsheets/d/[YOUR_KEY_FROM_URL]/edit ”,“正在使用的工作表标题!A2:I42”),“选择* WHERE Col5 CONTAINS'毛巾'“,1),”尚无值!“)

让我们分解一下

IFERROR允许您显示用户友好的消息,如果由于未返回数据而失败,则显示该消息

QUERY可让您指定搜索条件。如果只想导入单元格范围,则可以忽略此设置。

IMPORTRANGE使用提供的网址,然后获取此表,查看这些范围(左上方,右下方)


请务必注意,IMPORTRANGE会根据您的要求返回一个“小型电子表格”:A2:I42。在这种情况下9列。即使原始工作表有20列,查询也只能访问返回的列。因此,如果QUERY使用Col12,则会抛出错误,因为仅返回了9。
roberthuttinger
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.