问题描述
我希望阅读消息(每行);
PalletNo [0] SOH [0]
PalletNo [1] SOH [1]
PalletNo [2] SOH [2]等,等等
有人可以帮忙吗?甚至某个方向也会很好,不一定是答案。
我试图在“ message”变量内甚至在MailApp函数本身内创建一个for循环,但这会造成语法问题。
克里斯,谢谢您的帮助。
function LowT4KANBANSOHEmail()
{
var ss = SpreadsheetApp.getActive();
var sheet = ss.getSheetByName ('T4 Pallet (SOH) (Power Bi)');
var Now = new Date();
var startRow = 1;
var numRows = sheet.getLastRow();
var datarange = sheet.getRange(startRow,1,numRows,sheet.getLastColumn());
var data = datarange.getValues();
var j = 0;
var PalletNo = Array();
var SOH = Array();
for (var i = 0; i < data.length; ++i)
{
var row = data[i];
var TotalSOH = row[3];
var MinSOH = row [4];
if (TotalSOH <= MinSOH){
PalletNo[j] = row[0];
SOH[j] = row[3];
j=j+1;
}else
{
}
}//End of for loop
var message =
PalletNo[0]+
" (x"+
SOH[0]+
")"+
"\n"+
PalletNo[1]+
" (x"+
SOH[1]+
")"+
"\n";
MailApp.sendEmail("emailaddress","Subject",message
);
}//End of function
解决方法
我已经解决了自己的问题。
我也是Javascript和该论坛的新手,并认为我应该将答案反馈给社区,以备将来参考,以防其他人遇到类似问题。作为初学者,很难知道如何做出贡献,而不是觉得自己总是在提问。
我创建了一个新数组,每个元素/索引代表最终消息中的行号。为了拆分每行,我使用了.join功能。
下面的代码(某些语法可能是错误的,因为在删除机密信息时我可能不小心删除了某些语法)
function Answer()
{
var ss = SpreadsheetApp.getActive();
var sheet = ss.getSheetByName ('Spreadsheet');
var now = new Date();
var startRow = 1;
var numRows = sheet.getLastRow();
var dataRange = sheet.getRange(startRow,1,numRows,sheet.getLastColumn());
var data = dataRange.getValues();
var j = 0;
var PalletNo = Array();
var SOH = Array();
var PalletNoSOH = Array();
for (var i = 0; i < data.length; ++i)
{
var row = data[i];
var TotalSOH = row[3];
var MinSOH = row [4];
if (TotalSOH <= MinSOH){
PalletNo[j] = row[0];
SOH[j] = row[3];
PalletNoSOH[j] = (PalletNo[j].toString() + " (x" + SOH[j].toString() + ")");
j=j+1;
}else
{
}
}//End of for loop
MailApp.sendEmail("emailaddress","Subject",PalletNoSOH.join("\n")
);
}//End of function