使用 Google Apps 脚本通过电子邮件发送 Google 表格内容 Copy/Paste

Email Google Sheets Content like Copy/Paste with Google Apps Script

当您有一个 google sheet 包含一系列包含数据的单元格时,它们可以很容易地 copy/pasted 到一封电子邮件中,其中保留了格式和间距,甚至在适当的时候自动创建表格。有没有办法使用 Apps 脚本来模仿这种行为?我的直觉说不,但我想检查一下。

或者,我可以使用 Apps 脚本将 Google Sheet 的标签导出为 PDF 或 JPEG 格式吗?

谢谢!

您可以通过这种方式发送电子邮件,您将拥有类似电子表格的内容

function endEmail() {
  MailApp.sendEmail({to: 'who@gmail.com',
  subject: 'my subject', 
  htmlBody: testTableHTML()})
};
function testTableHTML(){
  var sh = SpreadsheetApp.getActiveSpreadsheet().getSheetByName('mySheet')
  var plage = sh.getRange('A1:H33'); // adapt as necessary
  return (tableHTML(plage))
}
function tableHTML(plage){
  var data=plage.getDisplayValues()
  var taille=plage.getFontSizes()
  var fond=plage.getBackgrounds()
  var couleur=plage.getFontColors()
  var police=plage.getFontFamilies()
  var htmltable = '<table style="border:1px solid black;">';
  for (row = 0; row<data.length; row++){
    htmltable += '<tr>';
    for (col = 0 ;col<data[row].length; col++){
      if (data[row][col] === "" || 0) {htmltable += '<td>' + '&nbsp;' + '</td>';} 
      else
        htmltable += '<td style="font-family:' + police[row][col] + '; background-color:' + fond[row][col] + '; color:' + couleur[row][col] + '; font-size:' + taille[row][col] + 'px;">' + data[row][col] + '</td>';
      }
      htmltable += '</tr>';
    }
  htmltable += '</table>';
  return htmltable
}