问题标签 [google-sheets-macros]

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 投票
2 回答
1110 浏览

google-apps-script - 用于删除包含部分关键字的行的 Google Apps 脚本

我想删除 Google 表格中包含员工、测试、不相关提交和重复条目的行。我的代码需要是独立的,以便可以在我的工作场所使用。

具体来说,我想:

  • 删除任何包含属于某个组织的电子邮件地址的行(例如:任何以 @domainname.com 结尾的电子邮件地址)。我一直在使用一段代码来删除包含属于我同事的三个特定电子邮件地址的行,但我希望找到一种方法来一次性删除所有员工,而无需在每封电子邮件中编码。这是我一直在使用的代码:

    /li>
  • 从评论部分删除任何包含单词“login”的行,其中“login”可能只是该列中副本的一部分。例如,有人可能会填写“联系我们”表格并在评论部分寻求有关其登录信息的帮助 - 但这不是我的目的的合格潜在客户。他们的消息可能是“嘿,你能帮我登录吗?” 或其他一些类似的措辞,这就是为什么我要删除任何包含“登录”的行的任何容量。

如果您有任何想法或建议的代码,请告诉我!

0 投票
0 回答
2947 浏览

google-apps-script - Google 表格在多个电子表格上导入宏

Google 最近添加了一项功能,您可以通过将其链接到 Google App Script 代码来创建自定义快捷方式。它似乎非常好且有用,但似乎宏需要逐个电子表格设置,而不是通常在所有电子表格中设置。

我不了解你们,但我有多个电子表格......有时我会编辑近 1,000 个电子表格。无法逐一导入宏电子表格。有谁知道如何为“环境”而不是一个电子表格来做这件事?

对谷歌表格来说似乎是一个很大的改进,但对我来说有点没用,因为我使用了很多电子表格。

编辑:我希望能够编写一个宏并在任何电子表格中使用它。我对这是否可以做到感到困惑,因为一方面我阅读了文档并且它说宏不能分发,但另一方面其他人说你可以通过使用 GAS 来做到这一点。

下面的评论之一是绝对正确的,它就像personal.xlsbexcel 工作簿的概念。在我看来,捷径只有在它们一直有效的情况下才有用,这是一种习惯。只有在一致的情况下才有用。

Google 内置快捷方式很有用,因为它们适用于所有电子表格。如果您必须为每个单独的电子表格设置它,我敢打赌您不会使用它们。

我希望谷歌以开发者模式构建,或者让它们在不做任何事情的情况下为每个电子表格工作。我了解存在安全问题。但谷歌可以弄清楚。

如果有人知道如何使用 GAS,请发布。

0 投票
1 回答
59 浏览

google-apps-script - 不受时间限制地运行 Google 电子表格宏

我正在尝试运行一个谷歌电子表格宏(macro.gs),它必须下载大量属于某个域的谷歌站点链接,但执行需要很长时间,因此脚本结束并且尚未完成。我已经读到这就是这样设计的(限时执行),所以我在那里无能为力。

但是,我还读到我可以尝试使用 Google Apps 脚本运行“任务队列”以在没有时间限制的情况下运行它,但我不确定是否可以在任务中运行电子表格宏来规避该时间限制。

到目前为止,我所阅读的所有内容都没有提供有关如何执行此操作的任何信息。

0 投票
0 回答
270 浏览

google-apps-script - 当行更新并且某个单元格具有特定值时,如何将公式应用于Google表格中的某个单元格?

我有一个 Google 表格正在通过两个渠道更新,一个通过 Appsheet 的应用程序,以及一个来自 Zapier 的自动化工作流程。两者都为新预订添加了新行。通过应用程序进行的更新工作完美,这是主要的工作方式。现在,我想添加通过 Zapier 传入的信息。问题是并非所有来自 Zapier 的信息都采用正确的格式。

请在此处查看工作表。

如果数据来自 Zapier,则 Zapier 将创建一个新行以及除 C 列“Driver ID”之外的所有列。我需要这个单元格自动更新。我可以使用 IndexMatch 链接到另一个表,其中包含所有名称和 ID 的概述。但是,Zapier 将始终创建一个新行,因此不会有公式。

如果数据通过 Appsheet 输入,所有列都将被填写,除了 E 列“驱动程序名称”。无需这样做,因为此信息已包含在驱动程序 ID 中。

我想要做的是,如果 E 列中出现值,则将公式应用于 C 列。如果 E 列中没有值出现,则 C 列中不需要公式。如何触发 (当某个单元格具有文本值时,该单元格的 IndexMatch) 公式?

0 投票
1 回答
791 浏览

google-apps-script - 如何创建宏以在活动单元格中复制整行并在活动单元格下方粘贴?

Google 表格 - 在活动单元格中复制整行,然后在宏中的活动单元格下方粘贴。

简单地在活动单元格下方插入行。

0 投票
1 回答
84 浏览

google-sheets - Google表格中如何重复行?

我什至不知道如何正确地问这个问题。

我有一份财产清单及其所有者、所有者地址和电话号码。

https://docs.google.com/spreadsheets/d/1-SUC9e53r-o73m5fLaV2FjkcGzLwW4mVPR0rUpw93aw/edit?usp=sharing

如您所见,最后 10 列是电话号码。我想为每个号码创建一个新行,在电话号码之前的单元格中包含所有相同的信息。有谁知道怎么做?或者可以指出我需要学习的正确方向。我正在尝试 Youtube Marcos 并学习如何自己做,但我什至不知道要搜索什么。

0 投票
1 回答
878 浏览

google-apps-script - 谷歌工作表移动单元格

我有 9108 行遵循特定顺序的谷歌表,但我努力将第二行移动到第一行旁边和第三行旁边(下图),我不能只取所有 9000 行并将其拆分为 3000 列,我试图找到这样的脚本解决方案:

在移动后的
每一行之后移动每一行到下一个“其他”行
删除空白行

并在不破坏顺序的情况下处理工作表中的所有行

图片与示例

感谢任何人的帮助或寻找解决方案。

编辑:

这可以满足我的需要,但是它会创建列并且有 9108 行,因为单元格太多,它会在 100 行后停止。

0 投票
1 回答
157 浏览

variables - 将活动单元格的值复制到不同/非活动工作表 - 如何确定要使用的目标/目标工作表

此脚本根据旁边单元格中的值将活动单元格的值复制到另一个工作表。

如果我在脚本中编写确切的单元格,它可以工作,但每次运行脚本时,它将基于不同的单元格。

我还需要微调目的地。

这里是:

0 投票
1 回答
58 浏览

google-apps-script - 将宏添加到所有 Google 表格

我有一个宏,我想为我过去、现在和未来的所有 Google 工作表保存它,因为这是我经常要做的重复性任务。出于某种原因,我似乎无法弄清楚如何将我的宏保存到其他谷歌表格。

0 投票
1 回答
62 浏览

google-apps-script - 跟踪函数的使用次数

我正在AGR_PROD使用AGR_PROD函数EraseInfo(所以我有一个变量叫作numrows计数器。

以下代码用于擦除功能,因此我试图将numrows变量传递给它。

Logger仅用于调试目的,但我得到一个找不到方法 deleteRows(number,(class))。(第 20 行,文件“宏”)