我有两个与一个电子表格相关联的表单,每个表单一个表单。 当我运行这样的脚本时
function myFunction() {
var ss;
ss = SpreadsheetApp.getActive();
Logger.log(ss.getFormUrl());
}
我只会看到一个网址(生命显示第二种形式的网址)。有没有办法获取所有链接表单的网址?
答案 0 :(得分:1)
API目前缺少此功能。问题跟踪器上存在针对此here的现有请求。明星要解决这个问题。
答案 1 :(得分:0)
我知道这是一个老问题,但我仍会添加一个可能涉及的答案。
通常来说,Form
连接到Sheet
,而不是Spreadsheet
本身。因此,获取所有Spreadsheet
表单的一种方法是遍历Sheet
的{{1}},并获取其表单URL,如下所示:
Spreadsheets
另一种可能的方法是获取驱动器或function getFormsOfSpreadsheet(spreadsheetId) {
const ss = SpreadsheetApp.openById(spreadsheetId);
const sheets = ss.getSheets();
const formsUrls = [];
for (const sheet of sheets) {
const formUrl = sheet.getFormUrl();
// getFormUrl() returns null if no form connected
if (formUrl) {
formsUrls.push(formUrl);
}
}
return formsUrls;
}
中的所有Form
,然后遍历它们以获取目的地并将其与您的Folder
ID进行比较,就像在this answer