如何获取关联Google表格的Google表单名称?
获取绑定Google表格的关联表单名称
你之前的问题根源:
FormApp.getActiveForm()仅能在绑定到表单的脚本中生效,表格脚本调用会直接失效;手动复制表单ID容易出错,且可能因权限问题导致openById执行失败。正确方案是通过表格API直接获取关联表单的URL,再通过URL打开表单并提取名称,代码如下:
function getLinkedFormTitle() { const activeSpreadsheet = SpreadsheetApp.getActiveSpreadsheet(); const linkedFormUrl = activeSpreadsheet.getFormUrl(); // 先判断表格是否关联了表单 if (!linkedFormUrl) { Logger.log("当前表格未关联任何Google表单"); return; } const linkedForm = FormApp.openByUrl(linkedFormUrl); const formTitle = linkedForm.getTitle(); // 打印表单名称到日志,也可写入表格指定单元格 Logger.log("关联表单名称:" + formTitle); // 示例:把名称写入A1单元格 // activeSpreadsheet.getRange("A1").setValue(formTitle); }
- 注意事项:
- 首次运行脚本会弹出授权窗口,需允许脚本访问你的Google表单与表格数据。
- 若表格未关联任何表单,
getFormUrl()会返回null,代码已做相应判断处理。
内容的提问来源于stack exchange,提问作者Jumpy73
相关产品推荐
相关产品推荐

