[英]How can I get the data entered into a Google Form emailed to me?
我對在網上找到的Google腳本進行了一些修改,但是不知道如何編寫如此出色的腳本,因此我確定這里缺少一些內容。
我的目標是將所有信息通過Google表單提交,然后通過電子郵件發送給我或我將創建的網上論壇。
此腳本的確向我發送了相關信息,但全部都添加為一行,甚至沒有提及問題。
我是個新手,但是我敢肯定,可以通過某種我不知道的命令或事件來解決。
var EMAIL_SENT = "EMAIL_SENT";
function sendEmails() {
var sheet = SpreadsheetApp.getActiveSheet();
var startRow = 2; // First column of data to process
var numRow = 1; // Number of columns to process
var dataRange = sheet.getRange(startRow, 1, numRow, 10)
// Fetch values for each row in the Range.
var data = dataRange.getValues();
for (var i = 0; i < data.length; ++i) {
var row = data[i];
var message1 = row[1,2,3,4,5];
var message2 = row[2];
var message3 = row[3];
var message4 = row[4];
var message5 = row[5];
var message6 = row[6];
var message7 = row[7];
var message8 = row[8];// Second column
var emailSent = row[10]
if (emailSent != EMAIL_SENT) { // Prevents sending duplicates
var subject = "New Hire On The Way!";
MailApp.sendEmail("itgroup@mycompany.com",subject,message1+message2+message3+message4+message5+message6);
sheet.getRange(startRow + i, 10).setValue(EMAIL_SENT);
}
}
}
整個“ EMAIL_SENT”是我試圖讓腳本不重新發送已輸入的信息。
如果有更好的方法,我很想聽聽。
非常感謝!
您可以在響應表中將此函數設置為onFormSubmit的觸發器。
function SendGoogleForm(e) {
var email = Session.getActiveUser().getEmail();
var subject = "Google Docs Form Submitted";
var s = SpreadsheetApp.getActiveSheet();
var columns = s.getRange(1,1,1,s.getLastColumn()).getValues()[0];
var message = "";
for ( var keys in columns )
message += columns[keys] + ' :: '+ e.namedValues[columns[keys]] + "\n\n";
MailApp.sendEmail(email, subject, message);
}
如果您只是希望電子郵件具有更多結構,則可以將html添加到各個郵件中。 取決於您想要獲得的瘋狂程度取決於您。 這是一個簡單的更改,您可以嘗試更改它的結構。 將其替換為您的if語句
if (emailSent != EMAIL_SENT) { // Prevents sending duplicates
var subject = "New Hire On The Way!";
MailApp.sendEmail("itgroup@mycompany.com",subject,message1+"<br />"+"<br />"+"<br />"+message2+"<br />"+"<br />"+"<br />"+message3+"<br />"+"<br />"+"<br />"+message4+"<br />"+"<br />"+"<br />"+message5+"<br />"+"<br />"+"<br />"+message6+"<br />"+"<br />"+"<br />");
sheet.getRange(startRow + i, 10).setValue(EMAIL_SENT);
}
我在這里所做的只是在您的消息之間添加中斷。 這應該創建一些空間。 您總是可以內聯css和html瘋狂。 對於初學者來說, www.w3schools.com始終是一個不錯的起點。 祝您好運,編碼愉快!
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.