问题标签 [google-sheets-custom-function]
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.
google-apps-script - Google 表格中的条件格式:我可以在“自定义公式为:”字段中使用自定义函数吗?
在 Google 电子表格中应用条件格式时,我想知道是否可以使用我通过脚本编辑器在“自定义公式为:”字段中创建的自定义函数。这是我所做的:
转到“脚本编辑器”并输入我的 fn 如下:
并保存。
在工作表中,选定单元格并打开“条件格式”对话框
创建新规则并在“自定义公式为:”字段中输入以下内容
/li>
不幸的是,这没有奏效。
添加
这是样品表...
看看里面的两个任务。我的目标是让“任务标题”自动写入黄色字段内(参见第 6 行中我手动输入值的任务)。
我已经尝试过的是: - 分配给范围内的每个单元格H5:BB7
以下公式:=if(H$4=D5; B5; "")
这将检查开始日期是否等于单元格日期并显示任务标题。这可以解决问题,但是即使“溢出”已打开,具有任务标题的单元格的内容也会被剪裁,因为下一个单元格不为空。
google-apps-script - Google 应用程序脚本错误:“您无权调用保护”
我正在尝试我的第一个 Google 表格应用脚本。我正在尝试制作一个自定义函数(通过绑定脚本)来检查它所在的单元格是否受到保护。如果它受到保护,它应该将单元格的值更改为(至少现在)保护类型。
我可以成功运行文档中的简单演示脚本:
但是当调用 Range::protect 时,我会出错
这是功能
我也遇到了与其他一些功能相同的权限错误,例如Session.getEffectiveUser()
. 我想,由于这是一个绑定的自定义函数并且我是(唯一的)工作表所有者,所以我可以调用这些方法。我错过了什么?谢谢。
我尝试将脚本复制粘贴到新工作表的脚本编辑器中,因为有些帖子很幸运,但对我来说没有运气。
javascript - 您无权使用 copyTo
我正在尝试将范围从一张纸复制到另一张纸(同时保留公式)。我写了一个简单的脚本使用copyTo
:
我称之为如下:
=copyRangeAcrossSheets("TEST_source","A1:A3","TEST_target","A1:A3")
我收到以下错误:
您无权调用 copyTo
我做了一些挖掘,发现函数必须使用特殊触发器(可安装)才能修改另一个文件。但是在这里我正在修改同一个文件。
Q1:为什么copyTo
在这里失败?
Q2:如何在无需定义可安装触发器的情况下解决该问题?(我只想在保留公式的同时复制范围)
javascript - Google 电子表格脚本,云端硬盘中的文件访问权限,“您无权调用...”
我有一张工作表,我需要在其中获取位于我的 Google 驱动器中的文件的 ID。我编写了以下脚本:
如果我在脚本编辑器中执行它(使用run
按钮),它运行良好(我得到了日志的 ID)。=get_id_pdf()
但是,如果我从我的 Google-Sheet的单元格(在单元格中:)调用脚本,则会收到错误消息:
“您无权调用 getFilesByName ”(见图)
我当然拥有访问该文件的所有授权(它在我自己的驱动器中,并且该文件是由我创建的)。
有人有想法吗?
问候。
google-apps-script - 您无权调用 setDataValidation
我正在尝试使用自定义功能。每当我尝试将其用作工作表中的公式并在单元格上运行时,它都会引发错误:
您无权调用 setDataValidation
但是当我从脚本编辑器运行它时,它运行得非常好。我怎样才能使它工作而无需Run
从脚本编辑器中单击?
注意:我不喜欢使用触发器。
google-apps-script - 自定义函数中的导入范围
大家好,我正在尝试在自定义函数中使用“Importrange”函数(如下所示)。
但是,当我尝试使用它时,我收到以下错误消息。
单元格 A1 错误 = 您无权调用 setFormula(第 7 行)。
单元格 A2 错误 = 未知范围名称:'LINK1'
google-apps-script - Google 脚本错误:“您无权调用排序”
我正在尝试在 Google 表格中运行自定义功能。我没有收到编译错误,但是当我尝试调用该函数时,我收到 #ERROR 以及一条消息,
您无权调用 sort
有没有办法解决这个问题?range.sort
如果不可用,如何在自定义函数中对范围进行排序?
这是我的代码:
javascript - 谷歌表格自定义功能超时
因此,在相当大小的单元格范围上运行我的自定义函数时,我一直不规律地收到一个错误:“执行自定义函数的内部错误”。
Google 指定“自定义函数调用必须在 30 秒内返回。如果没有,单元格将显示错误:执行自定义函数的内部错误。”
我的自定义功能是这样的:
当我将 1000 个值插入函数时,需要很长时间才能提取所有值。当我在 GOogle Scripts 中对其进行测试时,它运行良好,因为那里没有时间限制。
如果我可以做些什么来解决这个问题或提高效率,有人可以告诉我吗?非常感谢!
google-apps-script - 如何在 ArrayFormula 中使用 Google Script 方法 UrlFetchApp.fetch?
我有一个像这样的自定义公式:
这适用于单个公式=IMPORTDATA(A2)
,但是当我将其放在 ArrayFormula=ARRAYFORMULA(IMPORTDATA(A2:A))
中时,结果为 #ERROR 但是当我注释掉 UrlFetchApp.fetch() 时,它可以工作,因此错误似乎来自该方法。有谁知道为什么?
google-apps-script - 谷歌表格自定义函数内置函数
我在谷歌表格中有以下自定义函数,我试图在我的自定义函数中调用内置函数“TEXT”,但没有成功。Google 表格会提示“未知”功能“TEXT”。有解决方案吗?