Google Forms: Send data to spreadsheet

前端 未结 6 842
情深已故
情深已故 2020-12-08 08:26

How can I send the data from a webform to a google spreadsheet? I made a form with Google Drive, but to get custom CSS running, I need to copy the form tag.

In my ca

6条回答
  •  温柔的废话
    2020-12-08 09:25

    I was struggling with that from last few days, nothing was working. At the end, I found a very good solution.

    var sheetName = 'Sheet1'  
     var scriptProp = PropertiesService.getScriptProperties()  
     function intialSetup () {  
      var activeSpreadsheet = SpreadsheetApp.getActiveSpreadsheet()  
      scriptProp.setProperty('key', activeSpreadsheet.getId())  
     }  
     function doPost (e) {  
      var lock = LockService.getScriptLock()  
      lock.tryLock(10000)  
      try {  
       var doc = SpreadsheetApp.openById(scriptProp.getProperty('key'))  
       var sheet = doc.getSheetByName(sheetName)  
       var headers = sheet.getRange(1, 1, 1, sheet.getLastColumn()).getValues()[0]  
       var nextRow = sheet.getLastRow() + 1  
       var newRow = headers.map(function(header) {  
        return header === 'timestamp' ? new Date() : e.parameter[header]  
       })  
       sheet.getRange(nextRow, 1, 1, newRow.length).setValues([newRow])  
       return ContentService  
        .createTextOutput(JSON.stringify({ 'result': 'success', 'row': nextRow }))  
        .setMimeType(ContentService.MimeType.JSON)  
      }  
      catch (e) {  
       return ContentService  
        .createTextOutput(JSON.stringify({ 'result': 'error', 'error': e }))  
        .setMimeType(ContentService.MimeType.JSON)  
      }  
      finally {  
       lock.releaseLock()  
      }  
    
     }  
    

    For more detail information click here

提交回复
热议问题