2014-01-24 254 views
1

我有一个数据透视表的谷歌电子表格,我想通过使用我的Gmail的某些标准自动发送电子邮件。我对电子邮件脚本和cinditions很满意,但是我无法在任何地方找到能够有效地将表格的“复制 - 粘贴”复制到电子邮件中的脚本。如何使用Google脚本将Google电子表格表格粘贴到Gmail中?

我希望你能提供任何帮助。

感谢

敏捷

我设法得到它使用来自该社区咨询工作。谢谢!

我试图让它水平显示值,即每一行新的客户记录。但是,我得到了不同的东西。我附上我得到的和代码的文件。我将不胜感激任何建议。我很肯定的解决方案就在那里,但几个小时后,我无法得到它:(我显示下面的代码,我附上当前和预期的结果照片。

非常感谢

敏捷

function testMail(){ 
    var ss = SpreadsheetApp.getActiveSpreadsheet(); 
    var responses = ss.getSheetByName("Monitoreo de Pedidos"); 
// var lastRow = responses.getLastRow(); 
// var values = responses.getRange("A2"+(lastRow)+":R2"+(lastRow)).getValues(); 
    var values = responses.getRange("A3:R12").getValues(); 
    var headers = responses.getRange("A2:R2").getValues(); //The headers. A1 TO R1 does not contain relevant data 
var message = composeMessage (headers,values); 
var messageHTML = composeHtmlMsg(headers,values); 
Logger.log(messageHTML); 
    MailApp.sendEmail(Session.getEffectiveUser().getEmail(),'test html', message,{'htmlBody':messageHTML}); 
} 



function composeMessage(headers,values){ 
    var message = 'Here are the data you submitted :\n' 
    for (var j=0;j<5;++j){ //NUMBER OF ROWS 
    for(var c=0;c<values[0].length;++c){ //NUMBER OF COLUMNS, in the future this will be dynamic 
     message+='\n'+headers[0][c]+' : '+values[j][c] 
    } 
    } 
    return message; 
} 


function composeHtmlMsg(headers,values){ 
    var message = 'Here are the data you submitted :<br><br><table style="background- color:yellow;border-collapse:collapse;" border = 1 cellpadding = 5><th>Title</th> <th>Customer Info</th><tr>' 
    for (var j=0;j<5;++j){ 
    for(var c=0;c<values[0].length;++c){ 
    message+='<tr><td>'+headers[0][c]+'</td><td>'+values[j][c]+'</td></tr>' 

    } 
    } 
    return message+'</table>'; 

![Desired outcome][1]} 
+1

什么是您当前密码的样子喜欢,你有什么具体问题? – admdrew

+0

你有没有试图让你的ss作为html并将其用作html身体? –

+0

太好了。我尝试HTML根据您的建议在这篇文章http://stackoverflow.com/questions/17658409/how-to-format-email-from-spreadsheet-data-using-arrays。我想知道是否有可能以相反的方式显示表格,顶部的标题和下面的值。我试图创建一个代码来动态改变表的大小,但我不能得到我想要的格式。请原谅我,我是一个新手。 – user3233577

回答

0

,如果你想模仿格式化您需要在电子邮件正文写HTML和插入在那里。更多的工作。尝试,如果,如果你碰到困难回信。

+0

完成锯齿。格式化不是必需的。根据我以前的评论,我无法以其他方式显示表格,顶部标题和下面的值。我试图创建一个代码来动态改变表的大小,但我不能得到我想要的layoyt :(( – user3233577

+0

是可能的,它只是正常的html。搜索如何制作html表)(例如为例头文件) –

+0

谢谢齐格,我尝试过,但真的被卡住了,我发布了代码和图片,谢谢! – user3233577

相关问题