我在Google表格中创建了一个表格,我希望每5天自动将该表格(25行,2列)发送到特定的电子邮件。
我已经知道如何通过脚本发送电子邮件,基本上你使用MailApp.sendEmail。
function sendFuelcount() {
var sheet = SpreadsheetApp.getActiveSpreadsheet();
sheet.setActiveSheet(sheet.getSheets()[0]);
var column1 = sheet.getRange("D2:D25").getValue();
var column2 = sheet.getRange("A2:A25").getValue();
var data = Utilities.formatDate(new Date(), "GMT", "dd-MMM-yyyy")
var msg = ""+nome+" "+fuel+"\n"
MailApp.sendEmail("abcd@gmail.com", ""+data+"", msg, {
name: 'Auto Message'});
这是到目前为止的代码,但不幸的是,它只写了两列的第一行而不是25 x 2的值。
在电子邮件中我得到:
Column11 Column12
我在电子邮件正文中想要的是: 第11栏第12栏 第21栏第22栏 Column31 Column32 第41栏第42栏 第51栏第52栏
直到第25,1和25,2列或Google表格的副本。
希望我已经说清楚了。
谢谢。
编辑:下面的答案可以解决导出所有值的问题,但不是有条理的。
我在电子邮件中收到的是:
A,B,C,D,...,i
1,2,3,4,...,j
我想要的是:
A - 1
B - 2
C - 3
D - 4
i - j
有办法做到这一点吗?意思是如何在电子邮件中组织和显示。就像一张桌子。
答案 0 :(得分:0)
您必须使用getValues()而不是getValue()
答案 1 :(得分:0)
我设法做到了:
function sendFuelcount() {
var sheet = SpreadsheetApp.getActiveSpreadsheet();
sheet.setActiveSheet(sheet.getSheets()[0]);
var nom0 = sheet.getRange("A1").getValue();
var fue0 = sheet.getRange("D1").getValue();
var line0 = nome0 + "......" + fuel0;
var nom1 = sheet.getRange("A2").getValue();
var fue1 = sheet.getRange("D2").getValue();
var line1 = nome1 + "......" + fuel1;
var nome2 = sheet.getRange("A3").getValue();
var fuel2 = sheet.getRange("D3").getValue();
var line2 = nome2 + "......" + fuel2;
var nom3 = sheet.getRange("A4").getValue();
var fue3 = sheet.getRange("D4").getValue();
var line3 = nome3 + "......" + fuel3;
var nom4 = sheet.getRange("A5").getValue();
var fue4 = sheet.getRange("D5").getValue();
var line4 = nome4 + "......" + fuel4;
var nom5 = sheet.getRange("A6").getValue();
var fue5 = sheet.getRange("D6").getValue();
var line5 = nome5 + "......" + fuel5;
var data = Utilities.formatDate(new Date(), "GMT", "dd-MMM-yyyy") //define a data
var msg = ""+line0+"\n"+line1+"\n"+line2+"\n"+line3+"\n"+line4+"\n"+line5+" \n EMAIL GERADO AUTOMATICAMENTE"
MailApp.sendEmail("abcd@abcd.com", ""+data+"", msg, {
name: 'Auto Message'});
}
我设法得到这个结果:
Ba......(L)
eda......21
Alf......601
Arcs......95
Aamar......16
Canco......45
EMAIL GERADO AUTOMATICAMENTE
这更好,但不是我想要的。我想要的(或创建一个表):
Ba.......(L)
eda......21
Alf......601
Arcs.....95
Aamar....16
Canco....45
EMAIL GERADO AUTOMATICAMENTE
这就是我想要的,但我认为代码过于复杂,我必须重复25次。我不知道如何正确使用For。但我认为这在这里很有用。
谢谢。