1

顧客データを Google スプレッドシートに入力する SquareSpace からフォームを実行しています。現在、以下のスクリプトを実行していますが、トリガー OnFormSubmit が機能しません。スクリプトを手動で実行する必要があります。

function FormConfirmationEmail() {

  var sheetname = "Request Financial Assistance"
  var columnnumber = 6

  var ss = SpreadsheetApp.getActiveSpreadsheet(); 
  var sheet = ss.getSheetByName(sheetname);

  if (sheet.getRange(sheet.getMaxRows(),1).getValue() != "") {
     var lastrow = sheet.getMaxRows()    
  } else {
     var count = 0
     for (var i = 0; i < sheet.getMaxRows(); i++) {
        if (sheet.getRange(sheet.getMaxRows()-i,1).getValue() != "") {
        var lastrow = sheet.getMaxRows()-i
        break;
        }  
     }
  }

  var email = sheet.getRange(lastrow,columnnumber).getValue();  
  var emailPattern = /^[a-z0-9!#$%&'*+/=?^_`{|}~-]+(?:\.[a-z0-9!#$%&'*+/=?^_`{|}~-]+)*@(?:[a-z0-9](?:[a-z0-9-]*[a-z0-9])?\.)+(?:[A-Z]{2}|aero|asia|biz|com|coop|edu|gov|info|int|jobs|mil|mobi|name|museum|name|net|org|pro|tel|travel)\b/;
  var validEmailAddress = emailPattern.test(email); 

  if (validEmailAddress == true) {
    var message = "<HTML><BODY>"
     + "<P>This is an automated form completion email.  Thanks for submitting!"
     + "</HTML></BODY>";      
     MailApp.sendEmail(email, "Form Completion Email", "", {htmlBody: message});      

     sheet.getRange(lastrow,13,1,1).setValue("Email Sent");
      }  else{
     sheet.getRange(lastrow,13,1,1).setValue("Email not Sent - Invalid Email Address submitted");
  }
}

誰かが私が間違っていることを見ることができますか?

4

1 に答える 1