- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
嗨,这是我的工作表:https://docs.google.com/spreadsheets/d/1xkTt_1kLyROkUFComi8-NiKyDMan6617C1dA5UqWTSI/edit?usp=sharing
我想使用 Google 脚本在电子邮件中共享范围 A2:F8。据我所知,这个脚本运行良好:
function sendMail(){
var sh = SpreadsheetApp.getActiveSpreadsheet().getActiveSheet();
var data = sh.getRange("A2:O38").getValues();
//var htmltable =[];
var TABLEFORMAT = 'cellspacing="2" cellpadding="2" dir="ltr" border="1" style="width:100%;table-layout:fixed;font-size:10pt;font-family:arial,sans,sans-serif;border-collapse:collapse;border:1px solid #ccc;font-weight:normal;color:black;background-color:white;text-align:center;text-decoration:none;font-style:normal;'
var htmltable = '<table ' + TABLEFORMAT +' ">';
for (row = 0; row<data.length; row++){
htmltable += '<tr>';
for (col = 0 ;col<data[row].length; col++){
if (data[row][col] === "" || 0) {htmltable += '<td>' + 'None' + '</td>';}
else
if (row === 0) {
htmltable += '<th>' + data[row][col] + '</th>';
}
else {htmltable += '<td>' + data[row][col] + '</td>';}
}
htmltable += '</tr>';
}
htmltable += '</table>';
Logger.log(data);
Logger.log(htmltable);
MailApp.sendEmail("myemail@gmail.com", 'Daily report','' ,{htmlBody: htmltable})
}
问题是当我收到邮件时,合并的单元格未处于合并状态。这会产生 3 列而不是 1 列。有人可以调整代码,以便我得到与我格式化的工作表完全相同的结果吗?
最佳答案
我稍微修改了代码,因为我不想发送任何电子邮件。如果您将表格移动到左上角并使用 sh.getDataRange(),那么您将毫无问题地获得整个表格。
这是我修改后的版本。
function sendSomething(){
var sh = SpreadsheetApp.getActiveSheet();
var dataA = sh.getDataRange().getValues();
var None = ' ';
var htmltable ='';
var TABLEFORMAT = 'cellspacing="2" cellpadding="2" dir="ltr" border="1" style="width:100%;table-layout:fixed;font-size:10pt;font-family:arial,sans,sans-serif;border-collapse:collapse;border:1px solid #ccc;font-weight:normal;color:black;background-color:white;text-align:center;text-decoration:none;font-style:normal;'
var htmltable = '<table ' + TABLEFORMAT +' ">';
for (row = 0; row<dataA.length; row++)
{
htmltable += '<tr>';
for(col = 0 ;col<dataA[row].length; col++)
{
if (dataA[row][col] === "" || 0)
{
htmltable += '<td>' + None + '</td>';
}
else
if (row === 0)
{
htmltable += '<th>' + dataA[row][col] + '</th>';
}
else
{
htmltable += '<td>' + dataA[row][col] + '</td>';
}
}
htmltable += '</tr>';
}
htmltable += '</table>';
dispStatus('HTML',htmltable,800,500);
}
这是我的显示例程,我将其合并到您的代码中。这只是我的记录器版本。
function dispStatus(title,html,width,height,modal)
{
var title = typeof(title) !== 'undefined' ? title : 'No Title Provided';
var width = typeof(width) !== 'undefined' ? width : 400;
var height = typeof(height) !== 'undefined' ? height : 300;
var html = typeof(html) !== 'undefined' ? html : '<p>No html provided.</p>';
var modal = typeof(modal) !== 'undefined' ? modal : false;
var htmlOutput = HtmlService
.createHtmlOutput(html)
.setWidth(width)
.setHeight(height);
if(!modal)
{
SpreadsheetApp.getUi().showModelessDialog(htmlOutput, title);
}
else
{
SpreadsheetApp.getUi().showModalDialog(htmlOutput, title);
}
}
您仍然需要设置日期格式。也许你可以使用Utilities如果您想将标题中的单元格合并在一起,您需要弄清楚要给哪些单元格赋予 colspan="3"。
关于javascript - 如何在谷歌表格中以正确的格式邮寄单元格范围?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42902025/
我有一个简单的 post 表单,将数据从一个页面发送到另一个页面,但是当我按下提交时,process.php 说没有输入用户名和密码。我觉得我错过了一些非常明显的东西。我在这里做错了什么? 登录.ph
当过去 24 小时重复填写某个值时,我试图让自己在每晚 0:01 使用 cronjob 发送一封电子邮件。 到目前为止我所拥有的是: $query = "SELECT id, detection.nu
我想使用 JSP 发送 HTML 文件。但问题是.. 1) 当我们开发任何 HTML 文件时,我们都会提到一些 CSS 和 JavaScript 文件。 2) 因此,当我发送文件时,它缺少我在其他页面
有人可以指出我在这里做错了什么吗?在 W3c 验证器上我得到这个错误: Line 104, Column 43: Bad value mailto:?subject=Test&body=I found
我必须向 api 端点发出 post 请求,但我收到错误状态 500。 name: "HttpErrorResponse" ok: false status: 500 statusText: "Int
我必须用 Ruby 编写一个电子邮件导入程序,我偶然发现了 Ruby 1.9 的非常漂亮的 Mail gem。我知道如何遍历未读消息,但我不知道如何将它们标记为已读(文档很详尽,但我真的不知道要注意什
虽然有很多相同的问题,但没有一个解决方案对我有用。仅当有只有一个 收件人时才会发送邮件,否则会生成以下错误。此外,我只发送内部电子邮件,不发送外部电子邮件。 有什么想法吗? 代码: $to = 'on
使用 JavaMail API 和 IMAP,我想知道邮件已从文件夹 a 移动到 b。我怎样才能在不添加听众的情况下做到这一点?我的意思是我想在登录帐户并打开文件夹时发现消息的变化。 问题是,如果文件
今天只是一个接一个的问题。我刚刚部署到我的生产服务器并对其进行测试,每当涉及电子邮件时都会出现问题。特别是对于 Devise 的可确认注册电子邮件,每当我注册一个帐户时,日志中都会抛出以下错误...
我是一名优秀的程序员,十分优秀!