2017-09-19 69 views
1

我已經將腳本添加到幾張工作表中。但是,如果我只想在一張表中添加信息,它不起作用。我應該在這個腳本中改變什麼?這是鏈接到我前面的話題:enter link description here將數據插入到工作表/工作表併發送電子郵件

<b>test 1.1</b><br /> 
 
    
 
<br> 
 
    <form> 
 
    <br> 
 
    Nr item:<br> 
 
    <input id="NrItem" name="NrItem" type="text" /> 
 
<br> 
 

 
<br> 
 
<input name="choices" type="checkbox" value="Sheet1" /> sheet1 
 
<br> 
 
<br> 
 
<input name="choices" type="checkbox" value="Sheet2" /> sheet2 
 
<br> 
 
<br> 
 
<input name="choices" type="checkbox" value="Sheet3" /> sheet3 
 
<br> 
 

 
    <br> 
 
<br> 
 
    <input onclick="formSubmit()" type="button" value="Add Row" /> 
 
    
 
    <input onclick="google.script.host.close()" type="button" value="Exit" /> 
 
    </form> 
 
    <script type="text/javascript"> 
 
     function formSubmit() { 
 
      google.script.run.getValuesFromForm(document.forms[0]); 
 
      
 
     } 
 
    </script>

function demoHtmlServices() { 
 
    var ss = SpreadsheetApp.getActiveSpreadsheet(), 
 
     html = HtmlService.createHtmlOutputFromFile('Index').setWidth(200).setHeight(550); 
 
    ss.show(html); 
 
} 
 

 

 
function getValuesFromForm(form){ 
 
var NrItem = form.NrItem, 
 
    date = Utilities.formatDate(new Date(), "GMT", "yyyy-MM-dd"); 
 
     sheets = SpreadsheetApp.getActiveSpreadsheet().getSheets(); 
 
for (var i in sheets) { 
 
    for (var j in form.choices) { 
 
    if (form.choices[j] == sheets[i].getName()) { 
 
     sheets[i].appendRow([date, NrItem]); 
 
    } 
 
    } 
 
} 
 
}

而且我還有一個問題這一點,我怎麼能發送電子郵件信息中插入表格?當我有關於「Nr項目」和「工作表編號」的信息時,我想發送關於信息的電子郵件「Nr項目」,並在表格中插入信息。

enter image description here

問候

+0

發佈你的代碼,你有什麼嘗試? –

+0

也請給予比「不起作用」更詳細的描述 –

回答

0

儘量選擇紙張,而不是遍歷所有。例如:

function getValuesFromForm(form){ 
var NrItem = form.NrItem; 
var date = Utilities.formatDate(new Date(), "GMT", "yyyy-MM-dd"); 
var sheets = SpreadsheetApp.getActiveSpreadsheet().getSheets()[0]; // Added [0] but you could select any sheet 
//removed this line: for (var i in sheets) { 
    for (var j in form.choices) { 
    if (form.choices[j] == sheets.getName()) { // removed the [i] 
     sheets.appendRow([date, NrItem]); // removed the [i] 
    } 
    } 
//removed this line: } 
} 

相反的.getSheets()[0],你也可以使用.getSheetByName(name)。 讓我知道它是否適合你!

相關問題