Google apps script 谷歌脚本:让变量以正确的格式出现在自动电子邮件中的问题

Google apps script 谷歌脚本:让变量以正确的格式出现在自动电子邮件中的问题,google-apps-script,Google Apps Script,我已经设置了来自谷歌表单的自动电子邮件,但是它引用的数字和日期没有像表单中显示的那样正确格式化。请有人帮我修改一下,使百分比不是正常数字,精确到小数点后第二位。以及使用mm/dd/yyyy格式的日期 var EMAIL_DRAFTED=电子邮件起草; 功能周报{ var ss=SpreadsheetApp.getActiveSpreadsheet;//替换为源ID var sheet=ss.getSheetByName'Individual Report Emails';//替换为源工作表选项

我已经设置了来自谷歌表单的自动电子邮件,但是它引用的数字和日期没有像表单中显示的那样正确格式化。请有人帮我修改一下,使百分比不是正常数字,精确到小数点后第二位。以及使用mm/dd/yyyy格式的日期

var EMAIL_DRAFTED=电子邮件起草; 功能周报{ var ss=SpreadsheetApp.getActiveSpreadsheet;//替换为源ID var sheet=ss.getSheetByName'Individual Report Emails';//替换为源工作表选项卡名称 var startRow=2;//要处理的第一行数据 var numRows=sheet.getLastRow-1;//要处理的行数 var lastColumn=sheet.getLastColumn;//最后一列 var dataRange=sheet.getRangestartRow,1,numRows,lastColumn//获取活动工作表的数据范围 var data=dataRange.getValues;//获取范围中每一行的值 //完成电子表格中的每一行 对于变量i=0;i”; 电子邮件正文+=; emailBody+='前一周:'; emailBody+='执行的审计:'+WeekBeforRelastTotalAudits+'Avg限定符%:'+WeekBeforRelastQualifiers%:'+Avg异议%:'+WeekBeforRelastObject+'Avg Transfered%:'+WeekBeforRelastTransfered+'Avg Documented%:'+WeekBeforRelastDocumented%:'+Avg Dictions%:'Avg Tone%:'+周前预测提示音+“平均知识%:”+周前预测提示音+“前一周平均:”+周前预测提示音+”

”; 电子邮件正文+=; emailBody+='差异:'; emailBody+='执行的审计:“+WkDifTotalAudits+'Avg限定词%:”+WKDIFQalifiers+'Avg异议%:“+WkDifObjection+'Avg Transferred%:”+WKDIFTRANSERED+'Avg记录%:“+WkDifDocumented+'Avg措辞%:”+WKDIFDIFDICTION+'Avg音调%:“+WkDifTone+'Avg知识%:“+WKDIFKFKNowledge+'Avg差异:“+WkDifAverage+”

”; 电子邮件正文+=; emailBody+='如果绩效不佳,经理将与您一起进行审核。'; //创建电子邮件草稿 MailApp.sendmail IsaEmail,//收件人 '您对'+LastWeekSoW+'-'+LastWeekEoW,//主题的每周电话审核回顾 ,//正文纯文本 { htmlBody:emailBody//Options:Body-HTML } ; sheet.getRangestartRow+i,lastColumn.setValueEMAIL\u起草;//使用电子邮件更新最后一列 电子表格app.flush;//确保立即更新最后一个单元格 } }
} 如果要获取显示值,可以使用。您需要将带有数据变量的行更改为

  var data = dataRange.getDisplayValues();// Fetch values for each row in the range
要将小数位数限制为2,可以使用: var numberToSend=numberFromSheet.toFixed2; 如果要显示百分比,可以改为: var numberToSend=numberFromSheet*100.toFixed2+%; 为了根据您的偏好设置日期格式,您可以使用: var dateToSend=Utilities.formatDateFromSheet,您的时区,MM/dd/yyyy; 参考:
我希望这能有所帮助。

您能分享一份您正在制作的电子表格吗?没有敏感信息。这里有一个链接到一个示例工作表,其中有一些数据,比如它从制表符的格式中提取的制表符。这个相同的工作表将从相同的工作表中驱动每周、周一等,一旦我完善了这个工作表,只需交换哪些变量和一些措辞。我所有的工作都是正确的,除了将表格的格式输入到电子邮件中。谢谢!如果我想引用条件格式,当某个值低于80%时,数字在工作表中变为红色,有没有办法模仿它呢?getBackground会让你得到背景色,不管它是如何设置的,然后你可以使用它们来设置背景色,如果我理解正确的话。如果回答了你的问题,你是否介意也批准这个回答?老实说,不确定我们是否在谈论同一件事。基本上在工作表中,如果数字小于80%,字体将变为红色。我希望它在电子邮件中反映出这一点。您的初始解决方案正是我所需要的,并且在日期和百分比中获得了正确的格式,现在正在寻求将其提高一个档次,使数字红色字体(如果低于80%)与google工作表中的一样。如果您通过条件设置字体颜色,getForegroundColor应返回可在HTML电子邮件中使用的十六进制代码。我不确定是否有更简单的方法。