在 google 腳本的電子郵件中獲取 1 行中的所有列數據

古瑟姆

在此處輸入圖片說明

我有這個 google 腳本代碼,它根據條件發送電子郵件。代碼從不同的列中獲取數據,電子郵件的輸出如下所示:

現有代碼:

function sendEmails() 
{
  var sheet = SpreadsheetApp.getActiveSheet();
  var startRow = 1; // First row of data to process
  var numRows = 6; // Number of rows to process
  // Fetch the range of cells A1:P300
  var dataRange = sheet.getRange(startRow, 1, numRows, 13);
  // Fetch values for each row in the Range.
  var data = dataRange.getValues();
  var dayofemail = data[0][12];
  data.reduce((m, [qua_num,manufacturer,model,serial,descrip,,,,daysPastCal,emailAddress]) => {
  if (daysPastCal > -14) m.set(emailAddress, m.has(emailAddress) ? [...m.get(emailAddress), qua_num,manufacturer,model,serial,descrip] : [qua_num,manufacturer,model,serial,descrip]);
  return m;
}, new Map())
.forEach((qua_num, emailAddress) => {
  var message = qua_num.join('\n') + '\nThe above equipment are approaching due date or out of cal.\nPlease check with QA for replacement or sending the equipment out for re-calibration.';
var subject = 'AUTOMATED ALERT: CHECK EQUIPMENT CALIBRATION ';
  MailApp.sendEmail(emailAddress, subject + dayofemail, message);
});
}

輸出

QUA-014
COHERENT
J-10GE-LE
0303C15R
SENSOR
QUA-029
FLUKE
115
248301132
DIGITAL MULTIMETER
The above equipment are approaching due date or out of cal.
Please check with QA for replacement or sending the equipment out for 
re-calibration

我想看到這樣的電子郵件:

QUA-014  COHERENT  J-10GE-LE  0303C15R  SENSOR
QUA-029  FLUKE     115        248301132 DIGITAL MULTIMETER

The above equipment are approaching due date or out of cal.
Please check with QA for replacement or sending the equipment out for 
re-calibration

我如何在谷歌腳本中實現這一點?

尤里·克里希奇

不完全可維護代碼的好例子......好吧,我會嘗試\n在這一行中添加兩個

if (daysPastCal > -14) m.set(emailAddress, m.has(emailAddress) ? 
[...m.get(emailAddress), qua_num,manufacturer,model,serial,descrip] : 
[qua_num,manufacturer,model,serial,descrip]);

這邊走:

if (daysPastCal > -14) m.set(emailAddress, m.has(emailAddress) ? 
[...m.get(emailAddress), qua_num,manufacturer,model,serial,descrip,'\n'] : 
[qua_num,manufacturer,model,serial,descrip,'\n']);

並更改\n\t這裡:

var message = qua_num.join('\n') + ...

這邊走:

var message = qua_num.join('\t') + ...

但是我無法檢查它,因為您沒有提供可重現的代碼。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

Google Web Apps - 獲取用戶電子郵件但以所有者身份運行腳本

如何在發送電子郵件的 Google 應用腳本的 html 服務中設置背景圖像?

從工作表中獲取時間時的 Google 腳本會增加 +1 分鐘

Google App 腳本錯誤 - 無法讀取未定義的屬性“響應”並且無法發送電子郵件:沒有收件人

如何停止在谷歌表格腳本中發送重複的電子郵件

有沒有辦法使用 Go 獲取帶有電子郵件和密碼的 Google OAuth2 令牌?

Google Apps 腳本:發送 docx 電子郵件附件

從所有具有特定主題行的 Outlook 電子郵件中提取可變數據,然後從正文中獲取日期

加入來自多列的數據並從谷歌腳本發送電子郵件警報

我的腳本沒有根據計時器觸發所有電子郵件

腳本在運行代碼時不發送電子郵件

Apps 腳本:根據不同列中指定的日期發送 html 電子郵件

如何將 Google Sheet 轉換為不同的佈局?將具有相同數據的多行合併為一行,並將唯一數據合併到 1 個單元格中

創建 DataFrame 時,所有數據都出現在一行中。在列中獲取數據的正確方法是什麼?

Google 表單上傳 + 在自動電子郵件回復中附加上傳的 pdf

是否可以將 Google 表格中的多張表格作為電子郵件附件發送?

Google 應用程序腳本 - 通過單擊鏈接或使用彈出窗口每行發送一封電子郵件?

如何從客戶電子郵件和訂單的選擇字段中獲取 order_meta 詳細信息?

如何獲取數據表中的所有值

在 Google 可視化中添加新的數據行

具有多列的數據表中的子集行

驗證表數據庫(sql)、node.js 中的現有電子郵件

更改 WooCommerce 電子郵件通知中的訂單項元數據

我的聯繫表格電子郵件中的未定義數據

數據框在 1 列中包含多個值

如何更新數據庫所有表中名為“ModifiedBy”的所有列

將函數應用於 Pandas 數據幀 (lambda) 中的所有行

按索引將數據幀中標題的值分配給數據幀中的所有行

用數據框上的條件替換列中的所有值