การส่ง email ถึงผู้รับตามที่กำหนด พร้อมแนบข้อความ/ไฟล์ที่ต้องการ

  1. ปิด Google Sheets : GASWS1
  2. เมนู Tools > Script Editor…
  3. เมนู File > New > Script File
    ตั้งชื่อ: myscript6
  4. สร้าง function MailMerge3() ตามนี้
    function MailMerge3() {
     var ss = SpreadsheetApp.getActiveSpreadsheet(),
     SalarySheet=SpreadsheetApp.setActiveSheet(ss.getSheetByName("Salary")), 
     TemplateID='1bjpQnJikYMGYNaJQhetpZpkHyjI7iqBqDufprzMSo4k', 
     header = "A1:G1",
     data="A2:G6", 
     dataRows = SalarySheet.getRange(data).getValues(),
     headerRow = SalarySheet.getRange(header).getValues(),
     numColumns = SalarySheet.getRange(header).getNumColumns(),
     emailText = ""; 
    
     for (var i=0 ; i < dataRows.length ; i++) {
     emailText="";
     var id =DriveApp.getFileById(TemplateID).makeCopy("กองคลัง : แจ้งการโอนเงินให้คุณ " + dataRows[i][0] + " " + dataRows[i][1]).getId(),
     doc=DocumentApp.openById(id),
     docBody=doc.getBody();
     for (var j = 0 ; j < numColumns -1 ; j++) { 
     docBody.replaceText('{' + headerRow[0][j] + '}' , dataRows[i][j]); 
     } 
     emailText=docBody.getText();
     doc.saveAndClose();
     
     
     var emailaddress=dataRows[i][2],
     subject = "กองคลัง : แจ้งการโอนเงินให้คุณ " + dataRows[i][0] + " " + dataRows[i][1],
     attachment = DocumentApp.openById(id);
     MailApp.sendEmail( emailaddress, 
     subject ,
     emailText, 
     {
     attachments: [attachment.getAs(MimeType.PDF)]
     }
     ); 
     try { 
    
     dataRows[i][numColumns-1] = new Date(); 
     } catch (e) {
     
     dataRows[i][numColumns-1] = e.message;
     } 
     }
     
     SalarySheet.getRange(data).setValues(dataRows);
    }
  5. เมนู File > Save หรือ กดปุ่ม Ctrl+s
  6. เมนู Run > MailMerge3
Share the Post:

Related Posts

ทำความรู้จักกับ Outlook บนเว็บ

Post Views: 7 Outlook เป็นเครื่องมือจัดการอีเมลและปฏิทินที่ทรงพลัง ซึ่งช่วยให้คุณมีระเบียบและเพิ่มความสามารถในการทำงาน ด้วยอินเทอร์เฟซที่ใช้งานง่าย คุณสามารถจัดการกล่องขาเข้าของคุณ นัดหมาย และทำงานร่วมกับเพื่อนร่วมงานได้อย่างง่ายดาย ฟีเจอร์ที่แข็งแกร่งของ Outlook รวมถึงแม่แบบอีเมลที่ปรับแต่งได้ ความสามารถในการค้นหาขั้นสูง และการผสานรวมที่ไร้รอยต่อกับแอปพลิเคชัน Microsoft Office อื่นๆ ไม่ว่าคุณจะเป็นมืออาชีพที่ยุ่งอยู่หรือเป็นนักเรียนที่ต้องจัดการกับภารกิจหลายอย่าง Outlook

Read More

[บันทึกกันลืม] JupyterHub Authenticated with OIDC

Post Views: 36 ต่อจากตอนที่แล้ว [บันทึกกันลืม] JupyterHub ด้วย Docker คราวนี้ ถ้าต้องการให้ ยืนยันตัวตนด้วย OpenID เช่น PSU Passport เป็นต้น ก็ให้ทำดังนี้ ในไฟล์ jupyterhub_config.py ใส่

Read More