自动将信息从Google表单自动填充到表格

时间:2020-11-06 02:56:42

标签: google-apps-script google-sheets automation google-forms

我是一名律师,他在这里完全不适合他。我一直在研究和运行有关Google Script的测试,但是,我一直遇到问题。

目标:

第1步-有人填写了Google表单(信息包括姓名,电话号码等);

第2步-Google云端硬盘会自动生成一个新的模板电子表格;

第3步-表单中的信息会自动填充到新模板电子表格中。

有人可以救助我吗?或者至少让我摆脱痛苦的哈哈。

非常感谢!

更新#1:

基于评论,这是我的位置。好消息是它完成了步骤1和步骤2。坏消息是我仍在弄清楚步骤3,这可能是因为我对此很陌生。

无论如何,这就是我对步骤1和2的要求

function autoFillCaseInfofromIntake(e) {
  var Timestamp = e.values[0];
  var Source = e.values[1];
  var FullName = e.values[2];
  
  var templatefile = DriveApp.getFileById("I inserted ID here");

  var templatepopulatedfolder = DriveApp.getFolderById("I inserted ID here");
  
  var copy = templatefile.makeCopy(FullName, templatepopulatedfolder);
  
  var sheet = DocumentApp.openById(copy.getId());
 
  sheet.saveAndClose();

再次,对您的无知表示歉意!

更新#2:

非常感谢@arul selvan和@Iamblichus帮助我到达需要去的地方!

以防万一将来有人需要答案:

function autoFillCaseInfofromIntake(e) {
  var Timestamp = e.values[0];
  var Source = e.values[1];
  var FullName = e.values[2];
  
  var templatefile = DriveApp.getFileById("I inserted ID here");

  var templatepopulatedfolder = DriveApp.getFolderById("I inserted ID here");
  
  var copy = templatefile.makeCopy(FullName, templatepopulatedfolder);
  
  var newsheet = SpreasheetApp.openById(copy.getId());
  var sht1 = newsheet.getSheetByName("Sheet1");//open the default sheet 1 or if you want you can rename the sheet or create a new sheet
  sht1.getRange("A1").setValue(Source); //populate any cell with value captured by the form
  sht1.getRange("B1").setValue(FullName);

}

1 个答案:

答案 0 :(得分:1)

您破解了困难的步骤1和2。步骤3很简单。

function autoFillCaseInfofromIntake(e) {
  var Timestamp = e.values[0];
  var Source = e.values[1];
  var FullName = e.values[2];
  
  var templatefile = DriveApp.getFileById("I inserted ID here");

  var templatepopulatedfolder = DriveApp.getFolderById("I inserted ID here");
  
  var copy = templatefile.makeCopy(FullName, templatepopulatedfolder);
  
  var newsheet = SpreadsheetApp.openById(copy.getId());
  var sht1 = newsheet.getSheetByName("Sheet1");//open the default sheet 1 or if you want you can rename the sheet or create a new sheet
  sht1.getRange("A1").setValue(Source); //populate any cell with value captured by the form
  sht1.getRange("B1").setValue(FullName);

}

说明:

我确定您已经弄清楚了如何运行上述脚本“ On formSubmit”