Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> ซอฟต์แวร์ >> Office

Mail Merge จาก Excel ไป Outlook พร้อมไฟล์แนบ: คู่มือทีละขั้นตอน (2 ตัวอย่างปฏิบัติ)

ใช้ mail merge สร้างชุดเอกสารที่แต่ละผู้รับได้รับแบบรายบุคคล หากมองหาวิธี mail merge จาก Excel ไป Outlook พร้อมไฟล์แนบ มาถูกที่แล้ว มีหลายวิธี บทความนี้อภิปราย 2 ตัวอย่างที่เหมาะสม ให้ทำตามคู่มือครบถ้วน

2 ตัวอย่างที่เหมาะสมสำหรับ Mail Merge จาก Excel ไป Outlook พร้อมไฟล์แนบ

ใช้ 2 วิธีที่มีประสิทธิภาพและทรงเครื่องมือ ส่วนนี้ให้รายละเอียดครบถ้วน ใช้วิธีไหนก็ได้ เพราะยืดหยุ่นสูงในการปรับแต่ง ควรเรียนรู้และประยุกต์ทั้งหมด เพราะพัฒนาความคิดและความรู้ Excel ใช้ Microsoft Office 365 แต่ใช้เวอร์ชันอื่นได้

1. Mail Merge จาก Excel ไป Outlook พร้อมไฟล์แนบเดี่ยว

สาธิต mail merge จาก Excel ไป Outlook พร้อมไฟล์แนบเดี่ยว มารู้จักชุดข้อมูล Excel ก่อน เพื่อเข้าใจว่าเราพยายามทำอะไร มีชุดข้อมูลแสดง ชื่อคน, email id, และไฟล์ที่แต่ละคนต้องการ

Mail Merge จาก Excel ไป Outlook พร้อมไฟล์แนบ: คู่มือทีละขั้นตอน (2 ตัวอย่างปฏิบัติ)

ใช้ Visual Basic for Applications (VBA) mail merge จาก Excel ไป Outlook พร้อมไฟล์แนบเดี่ยว ต้องมี Developer tab แสดงบน Ribbon หลังจากนั้น ทำตามขั้นตอน

📌 ขั้นตอน:

  • จาก Ribbon ไปแท็บ Developer
  • เลือก Visual Basic จากกลุ่ม Code
  • หรือกด Alt+F11 เปิด VBA editor

Mail Merge จาก Excel ไป Outlook พร้อมไฟล์แนบ: คู่มือทีละขั้นตอน (2 ตัวอย่างปฏิบัติ)

  • ใน VBA window ไป Insert เลือก Module

Mail Merge จาก Excel ไป Outlook พร้อมไฟล์แนบ: คู่มือทีละขั้นตอน (2 ตัวอย่างปฏิบัติ)

  • พิมพ์โค้ดต่อไปนี้
Sub Single_attachment() 
    Dim appOutlook As Object 
    Dim Email As Object 
    Dim source, mailto As String 
    Set appOutlook = CreateObject("Outlook.Application") 
    Set Email = appOutlook.CreateItem(olMailItem) 
    mailto = mailto & Cells(2, 2) & ";" 
    source = "F:\SOFTEKO\61-0055\New folder\" & Cells(2, 3) 
    Email.attachments.Add source 
    ThisWorkbook.Save 
    source = ThisWorkbook.FullName 
    Email.attachments.Add source 
    Email.To = mailto 
    Email.Subject = "Important Sheets" 
    Email.Body = "Greetings Everyone," & vbNewLine & "Please go through the Sheets." & vbNewLine & "Regards." 
    Email.Display 
End Sub
  • ปิด Visual Basic window กด Alt+F8
  • กล่อง Macro เปิด เลือก Single_attachment ใน Macro name คลิก Run

Mail Merge จาก Excel ไป Outlook พร้อมไฟล์แนบ: คู่มือทีละขั้นตอน (2 ตัวอย่างปฏิบัติ)

  • หน้าต่าง Outlook จะปรากฏ พร้อมไฟล์แนบที่ต้องการ

Mail Merge จาก Excel ไป Outlook พร้อมไฟล์แนบ: คู่มือทีละขั้นตอน (2 ตัวอย่างปฏิบัติ)

🔎 คำอธิบายโค้ด VBA

Sub Single_attachment()

ตั้งชื่อ sub-procedure ของ macro

Dim appOutlook As Object 
Dim Email As Object 
Dim source, mailto As String

ประกาศตัวแปรที่จำเป็น

Set appOutlook = CreateObject("Outlook.Application") 
Set Email = appOutlook.CreateItem(olMailItem)

ใช้คำสั่ง Set สร้าง object ใหม่ appOutlook และ Email

mailto = mailto & Cells(2, 2) & ";"

ตัวแปรนี้เก็บผู้รับอีเมล

source = "F:\SOFTEKO\61-0055\New folder\" & Cells(2, 3)

ตัวแปรนี้เก็บ email id ของบุคคลจากโฟลเดอร์ที่ระบุ

ThisWorkbook.Save

คำสั่ง Save บันทึก workbook

source = ThisWorkbook.FullName

ตัวแปรนี้เก็บชื่อ workbook นี้

Email.attachments.Add source

เมธอด Add เพิ่ม source เข้า collection object

Email.To = mailto 
Email.Subject = "Important Sheets" 
Email.Body = "Greetings Everyone," & vbNewLine & "Please go through the Sheets." & vbNewLine & "Regards."

ตัวแปรคืนค่า "Important sheets" เป็น subject และ "Greetings Everyone, Please go through the sheets, regards" เป็น body

Email.Display

เมธอด Display แสดงอีเมล

End Sub

จบ sub-procedure ของ macro

หมายเหตุ:

ต้องบันทึกไฟล์ Excel และ docs ในโฟลเดอร์เดียวกัน มิฉะนั้นวิธีนี้จะไม่ทำงาน

Mail Merge จาก Excel ไป Outlook พร้อมไฟล์แนบ: คู่มือทีละขั้นตอน (2 ตัวอย่างปฏิบัติ)

อ่านเพิ่มเติม: Mail Merge ใน Excel โดยไม่ใช้ Word (2 วิธี)

2. Mail Merge จาก Excel ไป Outlook พร้อมไฟล์แนบหลายไฟล์

สาธิต mail merge จาก Excel ไป Outlook พร้อมไฟล์แนบหลายไฟล์ ชุดข้อมูลแสดง ชื่อบางคน, email id, และไฟล์ที่แต่ละคนต้องการ

Mail Merge จาก Excel ไป Outlook พร้อมไฟล์แนบ: คู่มือทีละขั้นตอน (2 ตัวอย่างปฏิบัติ)

ใช้ VBA mail merge จาก Excel ไป Outlook พร้อมไฟล์แนบหลายไฟล์ ต้องมี Developer tab บน Ribbon ทำตามขั้นตอน

📌 ขั้นตอน:

  • จาก Ribbon ไป Developer tab
  • เลือก Visual Basic จาก Code group
  • หรือกด Alt+F11 เปิด VBA editor

Mail Merge จาก Excel ไป Outlook พร้อมไฟล์แนบ: คู่มือทีละขั้นตอน (2 ตัวอย่างปฏิบัติ)

  • ใน VBA window ไป Insert เลือก Module

Mail Merge จาก Excel ไป Outlook พร้อมไฟล์แนบ: คู่มือทีละขั้นตอน (2 ตัวอย่างปฏิบัติ)

  • พิมพ์โค้ดต่อไปนี้
Sub attachments() 
    Dim appOutlook As Object 
    Dim Email As Object 
    Dim source, mailto As String 
    Dim i, j As Integer 
    Set appOutlook = CreateObject("Outlook.Application") 
    Set Email = appOutlook.CreateItem(olMailItem) 
    For i = 2 To 5 
        mailto = mailto & Cells(i, 2) & ";" 
    Next i 
    For j = 2 To 5 
        source = "F:\SOFTEKO\61-0055\New folder\" & Cells(j, 3) 
        Email.attachments.Add source 
    Next 
    ThisWorkbook.Save 
    source = ThisWorkbook.FullName 
    Email.attachments.Add source 
    Email.To = mailto 
    Email.Subject = "Important Sheets" 
    Email.Body = "Greetings Everyone," & vbNewLine & "Please go through the Sheets." & vbNewLine & "Regards." 
    Email.Display 
End Sub
  • ปิด Visual Basic window กด Alt+F8
  • กล่อง Macro เปิด เลือก attachments ใน Macro name คลิก Run

Mail Merge จาก Excel ไป Outlook พร้อมไฟล์แนบ: คู่มือทีละขั้นตอน (2 ตัวอย่างปฏิบัติ)

  • หน้าต่าง Outlook จะปรากฏ พร้อมไฟล์แนบที่ต้องการ

Mail Merge จาก Excel ไป Outlook พร้อมไฟล์แนบ: คู่มือทีละขั้นตอน (2 ตัวอย่างปฏิบัติ)

🔎 คำอธิบายโค้ด VBA

Sub attachments()

ตั้งชื่อ sub-procedure ของ macro

Dim appOutlook As Object 
Dim Email As Object 
Dim source, mailto As String 
Dim i, j As Integer

ประกาศตัวแปรที่จำเป็น

Set appOutlook = CreateObject("Outlook.Application") 
Set Email = appOutlook.CreateItem(olMailItem)

ใช้ Set สร้าง object appOutlook และ Email

For i = 2 To 5 
    mailto = mailto & Cells(i, 2) & ";" 
Next i 
For j = 2 To 5 
    source = "F:\SOFTEKO\61-0055\New folder\" & Cells(j, 3)

เริ่ม For Loop ตัวแปร mailto เก็บผู้รับ ตัวแปร source เก็บ email id จากโฟลเดอร์ที่ระบุ

Next

รันแต่ละรอบของ For Loop

ThisWorkbook.Save

คำสั่ง Save บันทึก workbook

source = ThisWorkbook.FullName

ตัวแปรเก็บชื่อ workbook นี้

Email.attachments.Add source

เมธอด Add เพิ่ม source เข้า collection

Email.To = mailto 
Email.Subject = "Important Sheets" 
Email.Body = "Greetings Everyone," & vbNewLine & "Please go through the Sheets." & vbNewLine & "Regards."

คืนค่า "Important sheets" เป็น subject และ "Greetings Everyone, Please go through the sheets, regards" เป็น body

Email.Display

เมธอด Display แสดงอีเมล

End Sub

จบ sub-procedure

หมายเหตุ:

ต้องบันทึกไฟล์ Excel และ docs ในโฟลเดอร์เดียวกัน มิฉะนั้นวิธีนี้ไม่ทำงาน

Mail Merge จาก Excel ไป Outlook พร้อมไฟล์แนบ: คู่มือทีละขั้นตอน (2 ตัวอย่างปฏิบัติ)

อ่านเพิ่มเติม: Macro to Populate a Mail Merge Document from Excel

สรุป

จบเซสชันวันนี้ เชื่อว่าแล้วคุณจะ mail merge จาก Excel ไป Outlook พร้อมไฟล์แนบได้ หากมีข้อสงสัยหรือข้อเสนอแนะ แชร์ในความคิดเห็นด้านล่าง

อย่าลืมเยี่ยมชม Exceldemy.com สำหรับปัญหาและโซลูชัน Excel ต่างๆ เรียนรู้วิธีใหม่ๆ และพัฒนาต่อไป!

บทความที่เกี่ยวข้อง

  • วิธีรวมไฟล์ Excel เพื่อฉลากส่งจดหมาย (ขั้นตอนง่ายๆ)
  • วิธี Mail Merge รูปภาพจาก Excel ไป Word (2 วิธีง่ายๆ)
  • Mail Merge จาก Excel ไป Word Envelopes (2 วิธีง่ายๆ)
  • วิธีเปลี่ยนรูปแบบวันที่ใน Excel Mail Merge (ขั้นตอนเร็ว)