问题标签 [importrange]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
44 浏览

google-sheets - 在当前日期之后查找下一堂课的日期,参考另一张纸

我正在尝试创建一个电子表格,其中列出了一系列唯一的班级名称,然后检查下一次教授该班级的时间表电子表格。

这是我要制作的样本表,突出显示的单元格是需要公式的单元格。这是第二张数据表。所以公式应该:

  1. 使用第一个电子表格的“选项卡”列指向目标工作表的相应选项卡。
  2. 类名的某种索引匹配?
  3. (这很困难)考虑到今天的日期,以找到下一次教授给定课程的时间。

D 列(下一次讲授课程时)应与 C 列的公式相同,但用 C 列中的日期代替今天的日期。

结果应该是一个电子表格,列出每个班级以及该班级接下来举行的两次。

这是我最好的尝试,B2 是我要匹配的班级名称,日程表的 A 列是我的日期,日程表的 B 列是我的班级名称。我没有尝试让“Tab 1”部分由公式驱动:

=iferror(index((IMPORTRANGE("157E80WQaamKMRi6V4cnFWMMFMTEhdlfwALiqmsr0-JY","'Tab 1'!A1:A80")),(match(ArrayFormula($B2&today()),ArrayFormula(IMPORTRANGE("157E80WQaamKMRi6V4cnFWMMFMTEhdlfwALiqmsr0-JY","'Tab 1'!B1:B80")&(IMPORTRANGE("157E80WQaamKMRi6V4cnFWMMFMTEhdlfwALiqmsr0-JY","'Tab 1'!A1:A80"))),-1)),""))

最后的 -1 应该返回大于我的类名与当前日期连接的最小结果。但是,虽然它适用于某些细胞,但它绝对不适用于其他细胞。我究竟做错了什么?

0 投票
1 回答
253 浏览

google-sheets - 将行插入使用 IMPORTRANGE 导入的数据中

我有两张纸:

SheetA 包含日期。它是参考数据。

SheetB 包含日期和在这些日期发生的事件的数据。此表会定期更新。

我在 SheetB 中使用 IMPORTRANGE 从 SheetA 中提取数据。

我有时需要在 SheetB 中插入行。例如,有时两个事件发生在同一日期,我需要为每个事件设置一行。

但是,当我在 SheetB 中的导入数据中插入新行时,新行会自动填充来自 SheetA 的 IMPORTRANGE 数据。

我认为 ADDRESS 可能有一个解决方案,但我无法弄清楚。任何帮助将非常感激!

0 投票
1 回答
340 浏览

google-sheets - 使用间接函数来引用查询函数的串联导入范围

以下是我的原始形式的查询函数: =ArrayFormula(query({importrange("1yqTUmJcL6YxgOpfHS5Pt9nYnmpiqN3tUPQP7-Rp8xis","CPG!A2:L20");importrange("1yqTUmJcL6YxgOpfHS5Pt9nYnmpiqN3tUPQP7-Rp8xis","PUB!A2:L20")},"Select Col5, Sum (Col4) where Col6='' group by Col5 pivot Col7"))

我试图通过以下尝试使用间接引用连接的导入范围来缩短公式

=ArrayFormula(query(indirect("JOIN!J3"),"Select Col5, Sum (Col4) where Col6='' group by Col5 pivot Col7"))

但想出了这个错误:

Error Unable to parse query string for Function QUERY parameter 2: NO COLUMN: Col5

Join!J3 单元格包含以下值:

{importrange("1yqTUmJcL6YxgOpfHS5Pt9nYnmpiqN3tUPQP7-Rp8xis","CPG!A2:L20");importrange("1yqTUmJcL6YxgOpfHS5Pt9nYnmpiqN3tUPQP7-Rp8xis","PUB!A2:L20")}

我在论坛中研究了各种类似的问题,但他们的答案没有解决方案。通常是使用“Select Col1”而不是“Select A”,但我的公式都已经使用了 Col1、Col2。做错什么了吗?

我已经包含了一些图像以供进一步澄清。

原公式: 在此处输入图像描述

缩短尝试: 在此处输入图像描述

sheetname 中的单元格值:JOIN 单元格:J3: 在此处输入图像描述

J3 中的单元格值实际上是单元格 A1 中的粘贴值: 在此处输入图像描述

0 投票
0 回答
62 浏览

google-apps-script - 有没有办法使用 GAS 来识别哪些 Google 表格正在通过 importrange 从目标 Google 表格中提取信息?

我正在尝试进行安全审核,我想看看其他表格从不同的“源”表格中提取数据。

有没有办法使用 Google Apps 脚本来做到这一点?

我已经用谷歌搜索并在 Google 表格论坛上询问过,但无法提出任何建议。

如果是这样,有没有办法撤销对特定表格的访问权限?

0 投票
2 回答
49 浏览

date - Google 表格中报告的查询公式有问题

这是我的公式。如果您发现任何问题,请评估并告诉我。

=(query(importrange("sheetLink","FormResponses"),"Select Col1, Col4, Col5 Where Col3 Contains '"&EmployeeName&"' And Col4 >= '"&ReportStartDate&"' And Col4 <= '"&ReportEndDate&"' And Col8 = '"&JobName&"'",-1))

您可以提供的任何帮助将不胜感激。

0 投票
1 回答
898 浏览

function - 使用 JOIN 将多个 IMPORTRANGES 拉入 SORT(ARRAYFORMULA({importrange1; importrange2; etc}

我怎样才能使用 JOIN (也许是 VLOOKUP?过滤器?)来制作一个 IMPORTRANGES 列表,从而产生类似的结果{IMPORTRANGE(C3,$E$1); IMPORTRANGE(C4,$E$1); IMPORTRANGE(C5,$E$1); IMPORTRANGE...}

目前,在谷歌工作表中,我有一个如下所示的公式:=SORT(ARRAYFORMULA({IMPORTRANGE(C3,$E$1);IMPORTRANGE(C4,$E$1);IMPORTRANGE(C5,$E$1);IMPORTRANGE..."电子表格网址在 Col C 中,范围(对于每个导入的工作表都相同)在 E1 中。

当我只有大约十几个要导入的电子表格并且它们都已经存在时,全部输入都很好。但是现在我想导入更多的电子表格(我听说 50 个导入范围的限制不再适用)而且它们还不存在。如果我保持原样,每次我向 C 列添加另一个电子表格 URL 时,我还必须进入并编辑我的 =SORT 公式。

然后我找到了这个线程,Fill ArrayFormula with dynamic ImportRange,它有一个建议的答案列出为: ="=sort(ARRAYFORMULA({"&JOIN(";",ArrayFormula("IMPORTRANGE("""&VLOOKUP(FILTER(G2:G20,G2:G20<>""),Sheet3!$A$2:$B,2,0)&""","""&G1&"!A2:B"")"))&"}),1,True,2,True)" 那里的 JOIN 看起来很有趣(我最近才了解 JOIN)但我不理解所有的语法(比如“”)和我也无法访问原始电子表格以查看引用指向的内容。

所以,我正在寻求如何将 C3、C4、C5 等输入到 JOIN 中的帮助——不知道 VLOOKUP 如何帮助我——以及是否有人知道为什么有这么多 ="&=&" “”贯穿整个建议的公式......

0 投票
1 回答
283 浏览

google-apps-script - getFormulas() 和 setFormulas() 将引用转换为 #REF

我的电子表格有问题,没有刷新=IMPORTRANGE公式。我已经尝试了共享权限和电子表格设置的所有技巧,但它们对我不起作用。

我想做的是创建一个简单的宏来擦除公式并重新输入它以刷新导入。当我运行我的宏时,我的公式变成了#REF.

我在命名范围“MasterImport”中的公式之后看起来像这样:

0 投票
1 回答
807 浏览

google-sheets - 如何在 2 个不同的谷歌电子表格之间使用 vlookup?

我有一个电子表格文件Marks A,另一个电子表格文件Marks Consolidated,现在我想使用简单的 vlookup 函数将在Marks A文件中输入的学生的分数合并到文件Marks Consolidated中的相同学生的分数。(因为两个文件中的名称相同)。

我有什么办法可以做到这一点?如果是,那么如何?

0 投票
1 回答
4559 浏览

google-sheets - Google表格中的查询导入范围未正确导入

我们正在使用 Google 表单来收集有关我们学生的数据。他们为所有学生使用相同的 Google 表格,但作为表格的一部分,他们会被询问学生姓名。

您可以在此处链接的 Google表格上的表单回复 1 选项卡上看到最终被收集的数据。

我正在尝试使用 ImportRange 为每个学生创建一个选项卡。我只为一名学生使用的公式是……

=QUERY(IMPORTRANGE("1nJANDP1fiQunxfxEf-EjwJrnIRICv6kLhYYY9XBXtD4", "表单响应 1!A:I"),"SELECT * WHERE Col3 = 'Adam N.'")

您可以查看名为 Adam N. 的选项卡,您会发现它确实有效。

似乎不起作用的一件事是,当 EI 列中有文本值时,该文本值最终不会显示在 Adam N. 选项卡上。有什么想法可以同时显示数字和文本值吗?

另一个问题似乎是,在 Adam N. 选项卡上,第一行与 Form Responses 1 选项卡具有相同的标题,但它也具有第一行数据。有什么办法可以去掉?

0 投票
2 回答
15848 浏览

google-sheets - 忽略空单元格的 ImportRange 函数

我想从另一个 Google 工作表导入一个范围,但要忽略空单元格,以便数据背靠背打印(与导入空单元格产生的大间隙相比)。这是我的公式(为保密更改了 Google 链接):

换句话说,关于结果的导入范围是: 空白单元格、空白单元格、25、43、空白单元格

当我想要它时: 25、43