Google Sheets quot;You do not have permission to call appendRowquot;(Google Sheetsquot;您没有调用appendRow;的权限)
本文介绍了Google Sheets";您没有调用appendRow;的权限的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
function myFunction() {
var url = 'https://api.github.com/users/chaimf90/repos'
var response = UrlFetchApp.fetch(url);
var json = response.getContentText();
var data = JSON.parse(json)
var sheet = SpreadsheetApp.getActiveSheet();
sheet.appendRow(['Repo Name', data[0].name]);
}
当我从脚本编辑器执行此函数时,它会按预期运行,但当我尝试通过调用=myFunction()在工作表本身中调用此函数时,我收到错误消息,指出我没有调用appendRow的权限。
为什么我可以从脚本编辑器调用此函数,但不能从工作表本身调用?
推荐答案
我遇到了同样的问题。解决方案似乎是创建一个运行Apps脚本函数的自定义菜单,而不是编写一个自定义函数并从电子表格中的单元格调用它。
从菜单触发的函数将在必要时向用户请求授权,从而可以使用所有Apps脚本服务。我学到了这个here。
示例:
function onOpen() {
var ui = SpreadsheetApp.getUi();
ui.createMenu('My Custom Menu')
.addItem('Run My Function', 'myFunction')
.addToUi();
}
function myFunction() {
SpreadsheetApp.getUi()
.alert('Running My Function');
}
编写并保存此代码后:
- 关闭并重新打开您的Google Sheet文档。
- 几秒钟后,将在上显示一个新菜单"我的自定义菜单" 顶部,文件、编辑、查看、...、帮助旁边。
- 单击"我的自定义菜单",然后单击"运行我的函数"以调用 函数myFunction。
这篇关于Google Sheets";您没有调用appendRow;的权限的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!
编程基础网
本文标题为:Google Sheets";您没有调用appendRow;的权限
基础教程推荐
猜你喜欢
- 从快速中间件中排除路由 2022-01-01
- 在 Javascript 中使用 Fetch API 上传文件并显示进度 2022-01-01
- 逻辑运算符 ||在 javascript 中,0 代表 Boolean false? 2022-01-01
- HTML5 画布调整为父级 2022-01-01
- CORS:当凭据标志为真时,无法在 Access-Control-Allow-Origin 中使用通配符 2022-01-01
- 最佳动态 JavaScript/JQuery 网格 2022-01-01
- 当木偶师打开Chrome时,不能使用Chrome扩展 2022-01-01
- 使用 jQuery 在悬停时交换 DIV 类 2022-01-01
- 即使每次插入第一个输入的值不同,第二个输入仍显示相同的输入值 2022-01-01
- 带角度的选项卡:仅使用 $http 在单击时加载选项卡 2022-01-01
