【发布时间】:2016-01-13 12:02:34
【问题描述】:
我有这个脚本可以发送一封电子邮件,其中包含电子表格中单元格的特定值。
function sendNotification() {
var ss = SpreadsheetApp.getActiveSpreadsheet();
var sheet = ss.getActiveSheet();
var cell = ss.getActiveCell().getA1Notation();
var cellvalue = ss.getActiveCell().getValue().toString();
var spr = SpreadsheetApp.getActiveSpreadsheet();
var column = spr.getRange('k2');
var values = column.getValues();
var cell = sheet.getRange('k2');
cell.setNumberFormat("$0.00");
var range_bill_com = sheet.getRange('k2');
if (range_bill_com.getValue() !=-1){
var recipients = "email@gmail.com";
var message = '';
var subject = 'exemplo';
var body = 'O valor previsto de Lucro/Prejuízo para hoje é de:' + values;
MailApp.sendEmail(recipients, subject, body);
}
};
但在收到的电子邮件中,此值的格式与我想要的格式不同,即以美元为单位(例如:“O valor previsto de Lucro/Prejuízopara hoje é de:945.2709034832405)。 我尝试了一些更改,但不知道如何以我想要的格式获取消息值。 谁能帮我改一下这个脚本?
【问题讨论】:
-
您将获得两次活动电子表格,其中包含两个不同的变量,无需复制。重复使用第一个。
-
如果范围是单个单元格,则不需要使用
getValues()。使用getValue()(末尾没有“s”)。它只得到一个值。它是一维数组,而不是二维数组。getValues()(最后是“s”)得到一个二维数组。 -
这是一个可能有帮助的 stackoverflow 帖子:Formatting numbers from spreadsheet
标签: google-apps-script google-sheets currency-formatting