ตัวอย่างโค้ดการส่ง Email พร้อมแนบไฟล์ด้วย Google Apps Scirpt เป็นพื้นฐานที่ควรมี ใช้งานง่าย ๆ ลองประยุกต์ใช้ดูนะ
function sendEmailWithAttachment() {
// สร้าง PDF จาก Google Sheet ปัจจุบัน
var sheet = SpreadsheetApp.getActiveSpreadsheet();
var pdfFile = DriveApp.getFileById(sheet.getId()).getAs('application/pdf');
// กำหนดรายละเอียดของอีเมล
var recipient = 'recipient@example.com';
var subject = 'รายงานประจำเดือน';
var body = 'สวัสดีครับ,\n\nแนบมาด้วยรายงานประจำเดือนในรูปแบบ PDF\n\nขอแสดงความนับถือ,\nทีมรายงาน';
// ส่งอีเมลพร้อมแนบไฟล์
MailApp.sendEmail({
to: recipient,
subject: subject,
body: body,
attachments: [pdfFile]
});
Logger.log('ส่งอีเมลเรียบร้อยแล้ว');
}
สร้างฟังก์ชัน sendEmailWithAttachment()
ที่ทำหน้าที่ส่งอีเมลพร้อมแนบไฟล์ PDF ซึ่งสร้างจาก Google Sheet ปัจจุบัน โดยมีรายละเอียดดังนี้:
- สร้าง PDF จาก Google Sheet ปัจจุบันโดยใช้
DriveApp.getFileById()
และgetAs('application/pdf')
- กำหนดรายละเอียดของอีเมล เช่น ผู้รับ หัวข้อ และเนื้อหา
- ใช้
MailApp.sendEmail()
เพื่อส่งอีเมลพร้อมแนบไฟล์ PDF
วิธีการใช้งาน:
- เปิด Google Sheet ที่คุณต้องการส่งเป็นไฟล์แนบ
- ไปที่ “Extensions” > “Apps Script”
- คัดลอกโค้ดข้างต้นไปวางในหน้า Script Editor
- แก้ไขอีเมลผู้รับ (
recipient@example.com
) เป็นอีเมลที่ต้องการส่งจริง - บันทึกสคริปต์และรันฟังก์ชัน
sendEmailWithAttachment()
เพื่อน ๆ สามารถปรับแต่งโค้ดนี้เพิ่มเติมได้ตามต้องการ เช่น:
- เปลี่ยนชื่อไฟล์แนบ
- เพิ่มผู้รับหลายคน
- ปรับแต่งเนื้อหาอีเมลให้เป็น HTML
- เพิ่มการตรวจสอบข้อผิดพลาด