สร้างจดหมายเวียนด้วย Gmail และ Google ชีต

จัดทุกอย่างให้เป็นระเบียบอยู่เสมอด้วยคอลเล็กชัน บันทึกและจัดหมวดหมู่เนื้อหาตามค่ากำหนดของคุณ

ระดับการเขียนโค้ด: ขั้นต้น
ระยะเวลา: 10 นาที
ประเภทโครงการ: การทํางานอัตโนมัติด้วยเมนูที่กําหนดเอง

เกี่ยวกับโซลูชันนี้

ป้อนข้อมูลลงในเทมเพลตอีเมลโดยอัตโนมัติด้วยข้อมูลจาก Google ชีต ระบบจะส่งอีเมลจากบัญชี Gmail เพื่อให้คุณตอบกลับผู้รับได้

ตัวอย่างจดหมายเวียน

ลักษณะการทำงาน

คุณจะสร้างเทมเพลตร่างของ Gmail ที่มีตัวยึดตําแหน่งให้สอดคล้องกับข้อมูลในสเปรดชีตของ Google ชีตได้ ส่วนหัวของแต่ละคอลัมน์ในชีตแสดงถึงแท็กตัวยึดตําแหน่ง สคริปต์จะส่งข้อมูลสําหรับตัวยึดตําแหน่งแต่ละตัวจากสเปรดชีตไปยังตําแหน่งของแท็กตัวยึดตําแหน่งที่เกี่ยวข้องในฉบับร่างของอีเมล

บริการ Apps Script

โซลูชันนี้ใช้บริการต่อไปนี้

ก่อนเริ่มต้น

หากต้องการใช้ตัวอย่างนี้ คุณต้องมีข้อกําหนดเบื้องต้นต่อไปนี้

  • บัญชี Google (Google Workspace บัญชีอาจต้องได้รับการอนุมัติจากผู้ดูแลระบบ)
  • เว็บเบราว์เซอร์ที่เข้าถึงอินเทอร์เน็ตได้

ลองเลย

ขั้นตอนที่ 1: ตั้งค่าสเปรดชีต

  1. คลิกปุ่มด้านล่างเพื่อทําสําเนาสเปรดชีต Gmail/Sheets Mail Merge ตัวอย่าง
    ทําสําเนา
  2. อัปเดตคอลัมน์ผู้รับให้เป็นอีเมลที่ต้องการใช้ในการผสานอีเมล
  3. (ไม่บังคับ) เพิ่ม แก้ไข หรือนําคอลัมน์ออกเพื่อปรับแต่งข้อมูลที่ต้องการรวมไว้ในเทมเพลตอีเมล

หากเปลี่ยนชื่อคอลัมน์ผู้รับหรืออีเมลที่ส่ง คุณต้องอัปเดตโค้ดที่เกี่ยวข้องในโปรเจ็กต์ Apps Script คุณเปิดโครงการ Apps Script จากสเปรดชีตได้โดยคลิกส่วนขยาย > Apps Script

ขั้นตอนที่ 2: สร้างเทมเพลตอีเมล

  1. สร้างอีเมลฉบับร่างในบัญชี Gmail หากต้องการรวมข้อมูลจากสเปรดชีตในอีเมล ให้ใช้ตัวยึดตําแหน่งที่ตรงกับชื่อคอลัมน์ซึ่งมีวงเล็บปีกกาล้อมรอบ เช่น {{First name}}
    • หากคุณจัดรูปแบบข้อความในอีเมล โปรดตรวจสอบว่าได้จัดรูปแบบวงเล็บตัวยึดตําแหน่งด้วย
    • ตัวยึดตําแหน่งคํานึงถึงตัวพิมพ์เล็กและตัวพิมพ์ใหญ่ และต้องตรงกับส่วนหัวคอลัมน์ทุกประการ
  2. คัดลอกบรรทัดเรื่องของอีเมลฉบับร่าง

ขั้นตอนที่ 3: ส่งอีเมล

  1. ในสเปรดชีต ให้คลิกจดหมายเวียน > ส่งอีเมล คุณอาจต้องรีเฟรชหน้าเว็บเพื่อให้เมนูที่กําหนดเองนี้ปรากฏขึ้น
  2. ให้สิทธิ์สคริปต์เมื่อได้รับข้อความแจ้ง หากหน้าจอคํายินยอม OAuth แสดงคําเตือน แอปนี้ไม่ได้รับการยืนยัน ให้เลือกขั้นสูง > ไปที่ {Project Name} (ไม่ปลอดภัย)

  3. คลิก Mail Merge > ส่งอีเมล อีกครั้ง

  4. วางบรรทัดหัวเรื่องเทมเพลตอีเมล แล้วคลิกตกลง

หากใช้ตัวกรองกับชีต สคริปต์จะยังคงส่งอีเมลให้ผู้เข้าร่วมที่กรองออก แต่จะไม่เพิ่มการประทับเวลา

เปิดโครงการ Apps Script

โค้ดของสคริปต์ตัวอย่างจะมีความคิดเห็นในบรรทัดเพื่อช่วยให้คุณเข้าใจวิธีการทํางาน หากต้องการเข้าถึงโค้ด ให้คลิกส่วนขยาย > Apps Script ในสเปรดชีต

การแก้ไข

คุณสามารถแก้ไขระบบอัตโนมัติในการรวมอีเมลได้เท่าที่คุณต้องการ ด้านล่างนี้คือการเปลี่ยนแปลงที่ไม่บังคับบางส่วนที่คุณทําได้ในซอร์สโค้ด

เพิ่มพารามิเตอร์สําเนาลับ สําเนา การตอบกลับ หรือจากอีเมล

โค้ดตัวอย่างจะมีพารามิเตอร์เพิ่มเติมจํานวนหนึ่งซึ่งแสดงความคิดเห็นอยู่ในปัจจุบัน ซึ่งจะช่วยให้คุณควบคุมชื่อบัญชีที่ใช้ส่งอีเมล ตอบกลับอีเมล รวมทั้งส่งสําเนาถึงสําเนาลับและสําเนาได้

เปิดใช้งานพารามิเตอร์ที่ต้องการเพิ่มโดยนําเครื่องหมายทับ // ออกด้านหน้าแต่ละพารามิเตอร์

ตัวอย่างต่อไปนี้แสดงบางส่วนจากฟังก์ชัน sendEmails ที่เปิดใช้งานพารามิเตอร์อีเมลส่วนใหญ่

GmailApp.sendEmail(row[RECIPIENT_COL], msgObj.subject, msgObj.text, {
         htmlBody: msgObj.html,
         bcc: 'bcc@example.com',
         cc: 'cc@example.com',
         from: 'from.alias@example.com',
         name: 'name of the sender',
         replyTo: 'reply@example.com',
        // noReply: true, // if the email should be sent from a generic no-reply email address (not available to gmail.com users)

ในตัวอย่างข้างต้น ระบบยังคงเพิ่มพารามิเตอร์ของ noReply อยู่เนื่องจากพารามิเตอร์ replyTo ตั้งค่าไว้

ใส่อักขระ Unicode ในอีเมล

หากต้องการใส่อักขระ Unicode เช่น อีโมจิ ในอีเมล คุณต้องอัปเดตรหัสเพื่อใช้บริการอีเมลแทนบริการ Gmail

ในโค้ดตัวอย่าง ให้อัปเดตบรรทัดต่อไปนี้

GmailApp.sendEmail(row[RECIPIENT_COL], msgObj.subject, msgObj.text, {

แทนที่บรรทัดนี้ด้วยรหัสต่อไปนี้

MailApp.sendEmail(row[RECIPIENT_COL], msgObj.subject, msgObj.text, {

ผู้ร่วมให้ข้อมูล

ตัวอย่างนี้สร้างขึ้นโดย Martin Hawksey หัวหน้าฝ่ายออกแบบการเรียนรู้และเทคโนโลยีที่ Edinburgh Futures Institute บล็อกเกอร์ และผู้เชี่ยวชาญด้านนักพัฒนาซอฟต์แวร์ Google

ตัวอย่างนี้ได้รับการดูแลโดย Google โดยได้รับความช่วยเหลือจาก Google Developer Expert