问题标签 [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 投票
1 回答
81 浏览

for-loop - 如何使用应用程序脚本在谷歌工作表中每三行数字插入两行

添加行示例的图片

如图所示,A列有11行数字,我想给它加行,让它显示为D列的数字

您会看到 A 中每 3 行数字,我想在其上下添加一个新行,顶部的新行值为“0”,底行是这三行数字的总和值例如前三行是1,2,3,它们的和是“1+2+3=6”,后三行是4,5,6,和是“4+5+6=15”第三三行是7,8,9,总和是“7+8+9=24”如图所示,你看到列的最后一部分是“10和12”,它们是两行(小于三行),但在这种情况下,它仍然需要添加两个新行,顶部的一行是“0”,底部的一行是“10+12=22”

现在,我写了两个 for 循环函数来插入行

"insertRows()" 用于插入首行,"insertRows2()" 用于插入底行,到目前为止这两个函数都可以很好地将行插入正确的位置,但我不知道如何在循环中用“0”填充顶行以及如何在底行中填充每三行数字的总和值。

你们知道如何用正确的值填写行吗?

0 投票
2 回答
126 浏览

google-apps-script - 如何将范围定义为“选定字段”?

我是编码新手,我正在寻找准确的语法来将范围定义为所选字段。

我创建了一个宏来更改字段的颜色(此处为颜色“红色”)。我可以在定义的字段(例如“A1”)或一组字段(例如“A1:Z40”)上执行此操作。

但是,如果我希望此宏仅适用于当前选定的字段,我会尝试搜索正确的语法。

我应该输入什么而不是“A1”?

0 投票
1 回答
6236 浏览

google-apps-script - 如何通过选定的列将谷歌工作表导出为 CSV

我有一个要导出为 CSV 文件的 Google 工作表。但是我不想导出工作表中有 2 列。比如图片中,我不想导出列“N”和“P”下面是我为导出写的Apps Script代码

如您所见,我使用 for 循环来导出行和列,如何进行更改以使两列不显示在导出 CSV 中

0 投票
1 回答
3614 浏览

google-apps-script - 无论如何,是否根据顶列值中的值突出显示谷歌表格中的整个列?

无论如何,是否根据顶列值中的值突出显示谷歌表格中的整个列?

目前,我在第 2 行中使用条件格式突出显示了我的日期,但我希望在当前日期突出显示整个列。

我不确定是否使用脚本或宏来更改所有列背景。

有什么建议么?谢谢你。

0 投票
1 回答
13268 浏览

google-apps-script - 谷歌脚本错误“您无权调用创建(第 38 行,文件“宏”)”

我正在运行 Google Sheet 脚本,并且在上面的代码行中收到以下错误消息。知道如何解决这个问题吗?我是新手。

错误信息:

您无权调用 create(第 38 行,文件“宏”)

0 投票
0 回答
99 浏览

google-apps-script - 通过录制的 Google Script 未出现在宏菜单中

我已经录制了在编辑器中工作的脚本,并且将从编辑器中运行,但是在 Google Sheet 宏菜单中没有选择相同的脚本,它是从中录制的

0 投票
3 回答
834 浏览

google-apps-script - 如何在单元格中插入刚刚在 Google Drive 中创建的文件夹的名称和链接?

我想通过 Google 表格中的脚本在 Google Drive 中创建一些文件夹,然后获取新文件夹的 URL 以将它们放入单元格中。

我成功地根据“员工 ID”列创建了文件夹,并用文件夹超链接替换了“员工 ID”列的值。

所以我得到了在 Google Drive 中创建的 3 个文件夹:分别为 1,2 和 3。问题是我的代码在 Google 表格的每一行中重复相同的名称和 URL,设置创建的最后一个文件夹的名称和 URL(在本例中为文件夹 3)。

如果您能给我一些帮助,我将不胜感激。这是我的代码:


好的,我为此更改了代码。我可以创建文件夹,但问题在于SetFormula我无法使其工作以读取每一行以将 ID 替换为 URL。它只取最后一个 ID,然后在该范围内的所有行中重复相同的 ID。请帮忙!:P

0 投票
1 回答
2432 浏览

google-apps-script - 如果输入重复,则覆盖 Google 表格(用于表单响应)行

所以,我一直在试图弄清楚如何停止出现在我的谷歌表单响应输出中的重复行。如果发现这个链接听起来完全符合我的要求(Form Google Script Prevent Duplicates),但我一生都无法弄清楚如何编辑给定的答案以在我的工作表上工作。

我已经包含了我的工作簿的屏幕截图,以举例说明我希望在其上运行编辑过的代码的数据结构,下面是我尝试使代码在我的数据结构上正确运行的尝试。

我想在其上运行代码的工作表结构。我想使用电子邮件地址作为“唯一”标识符,因此可以使用它来识别任何重复的行。

我尝试调整代码以处理上述数据结构(我完全没有这种脚本语言的背景,所以如果我犯了一个明显的错误,请放轻松):

0 投票
1 回答
92 浏览

vba - 我可以使用 VBA 或 Google 表格宏计算一个数字在列中仅出现一次的次数吗?

我可以使用 Excel 公式、VBA 或 Google 表格公式或宏计算一个数字在列中仅出现一次的次数吗?老实说,谷歌表格的解决方案是首选,但我知道这可能不是一个选择。

出于我的目的,这些数字将超过 500,有些重复,有些则不重复。我正在寻找一种方法来跟踪一个数字只出现一次的次数。

例如(这将被转置为一列):1 1 2 3 3 3 4 4 4 5 5 6 7 7 8 9 9 9

在本例中,我需要输出 3,因为数字 2、6 和 8 只出现一次。

类似于: int sum = 0;

然后每次一个数字只出现一次: sum +i;

我刚刚完成了一门非常基础的 Java 课程,但在 Google 表格或 Excel 中找不到任何用于跟踪重复(或仅出现一次的数字)的内容。

0 投票
1 回答
196 浏览

google-apps-script - 在 Google App Script 中,当数据包含逗号时,如何将行附加到新工作表?

在 Google 表格(使用 Google App 脚本)中,我正在创建一个脚本,逐行检查特定列中是否存在值。如果该列中没有值,那么我想将该行复制粘贴到新工作表中。在下面的代码中,我通过将当前行加入一维数组中,用逗号将其拆分,然后将其附加到目标工作表。但是,我的一些数据中有逗号,导致粘贴的行在这些逗号上错误地分开。如何解释要拆分的字符串中的逗号?