如何将表单标题添加到发送到 Google 表格的数据
How to add Form title to data sent to a Google Sheets
我有多个 Google 表单,它们具有相同的响应字段,输入到某个 Google 工作表中,除了它们的名称和描述外,无法区分它们。使用 Google Apps 脚本,有什么方法可以将 Google 表单的名称 and/or 描述与通常添加到表格中的所有内容一起添加到表格中?我用 "source" 做了一些研究,但我不知道如何实现它。
谢谢!
您可以通过以编辑模式 select 进入 "Script Editor" 并将以下代码粘贴到脚本中来完成此操作。您需要单击 "Trigger" 按钮(看起来像一个时钟,如果找不到,请点击此处 https://developers.google.com/apps-script/guides/triggers/installable)。单击添加触发器和 select 事件类型 "On Form Submit"
function writeFormTitle(){
//Get Form
var form = FormApp.getActiveForm();
//Get Form's Title
var formTitle = form.getTitle();
//Get the Write To Spreadsheet ID where the data will be written to
var destinationSpreadsheet = form.getDestinationId();
//Activate that Spreadsheet by the destinationSpreadsheet ID
var sheet = SpreadsheetApp.openById(destinationSpreadsheet).getActiveSheet();
//Find the last column and row
var writeToColumn = sheet.getLastColumn()+1;
var writeToRow = sheet.getLastRow();
//Write title to Spreadsheet next to submitted data.
sheet.getRange(writeToRow, writeToColumn, 1, 1).setValue(formTitle);
}
我有多个 Google 表单,它们具有相同的响应字段,输入到某个 Google 工作表中,除了它们的名称和描述外,无法区分它们。使用 Google Apps 脚本,有什么方法可以将 Google 表单的名称 and/or 描述与通常添加到表格中的所有内容一起添加到表格中?我用 "source" 做了一些研究,但我不知道如何实现它。
谢谢!
您可以通过以编辑模式 select 进入 "Script Editor" 并将以下代码粘贴到脚本中来完成此操作。您需要单击 "Trigger" 按钮(看起来像一个时钟,如果找不到,请点击此处 https://developers.google.com/apps-script/guides/triggers/installable)。单击添加触发器和 select 事件类型 "On Form Submit"
function writeFormTitle(){
//Get Form
var form = FormApp.getActiveForm();
//Get Form's Title
var formTitle = form.getTitle();
//Get the Write To Spreadsheet ID where the data will be written to
var destinationSpreadsheet = form.getDestinationId();
//Activate that Spreadsheet by the destinationSpreadsheet ID
var sheet = SpreadsheetApp.openById(destinationSpreadsheet).getActiveSheet();
//Find the last column and row
var writeToColumn = sheet.getLastColumn()+1;
var writeToRow = sheet.getLastRow();
//Write title to Spreadsheet next to submitted data.
sheet.getRange(writeToRow, writeToColumn, 1, 1).setValue(formTitle);
}