
Mail merge ทำให้การสร้างเอกสารที่เป็นส่วนตัวในจำนวนมากเป็นเรื่องง่าย เช่น จดหมาย อีเมล ใบแจ้งหนี้ หรือประกาศนียบัตร คุณเริ่มต้นด้วยแม่แบบและกรอกข้อมูลโดยใช้ข้อมูลจากสเปรดชีต แต่ละแถวในไฟล์ Excel สร้างเอกสารใหม่พร้อมรายละเอียดที่ถูกต้องในสถานที่ที่เหมาะสม นี่เป็นวิธีที่ฉลาดในการทำให้งานซ้ำซากอัตโนมัติเช่นการส่งใบแจ้งหนี้หรือการสร้างรายงาน ในโพสต์นี้ เราจะแสดงวิธีการทำ mail merge จาก Excel โดยใช้ C# มาทำกันเถอะ
บทความนี้ครอบคลุมหัวข้อต่อไปนี้:
- C# Mail Merge Excel Library
- Mail Merge ทำงานอย่างไรกับ Aspose.Cells?
- ขั้นตอนการทำ Mail Merge จาก Excel อย่างละเอียด
- Complete C# Code to Mail Merge Data
- แหล่งข้อมูลฟรี
- คำถามที่พบบ่อย
C# Mail Merge Excel Library
เราจะใช้ Aspose.Cells for .NET API เพื่อทำการรวมจดหมายจาก Excel ใน C# มันมีเครื่องมือที่มีประสิทธิภาพในการทำงานกับไฟล์ Excel โดยตรงในโค้ดของคุณ มันทำให้ผู้พัฒนาสามารถสร้าง อ่าน และอัปเดตสเปรดชีทได้อย่างง่ายดาย คุณยังสามารถจัดการงานขั้นสูง เช่น การรวมจดหมายโดยไม่มีปัญหา หรือนำห้องสมุดทำให้การทำงานอัตโนมัติใน Excel เป็นเรื่องเร็ว ยืดหยุ่น และน่าเชื่อถือ
ในการเริ่มต้นด้วย Aspose.Cells for .NET ให้ทำตามคำแนะนำการติดตั้งที่ง่ายเหล่านี้:
- โปรดดาวน์โหลดจาก releases.
- ติดตั้งไลบรารีโดยใช้ NuGet Package Manager ด้วยคำสั่งต่อไปนี้:
PM> Install-Package Aspose.Cells
Mail Merge ทำงานอย่างไรกับ Aspose.Cells?
Aspose.Cells ไม่สนับสนุน “mail merge” ใน the same way as Word มันเพิ่ม mail merge ให้กับ Excel โดยใช้ Smart Markers เครื่องหมายเหล่านี้ทำหน้าที่เป็นที่รองในสเปรดชีตของคุณ และไลบรารีจะทำการแทนที่มันด้วยข้อมูลจริงในระหว่างการทำงาน ขณะที่มันประมวลผลแต่ละแถวจากแหล่งข้อมูลของคุณ มันจะเติมข้อมูลในเทมเพลตและขยายเนื้อหาโดยอัตโนมัติ ช่วยให้คุณสามารถสร้างเอกสารที่ปรับแต่งได้อย่างเต็มที่ด้วยบรรทัดเดียวของโค้ด C# เท่านั้น
&=DataSource.ColumnName
ในระหว่างการประมวลผล Aspose.Cells จะแทนที่สิ่งเหล่านี้ด้วยข้อมูลจริงจาก DataTable
List<T>
หรือ IEnumerable
อะไรก็ได้ ตัวอย่างเช่น ไลบรารีจะแทนที่ &=Data.Name
ด้วยค่าจากคอลัมน์ชื่อในตารางข้อมูล
เตรียมเทมเพลต Excel
สร้างไฟล์ Excel (เช่น Template.xlsx) ที่มีสมาร์ตมาร์คเกอร์ นี่คือตัวอย่างของเลย์เอาต์:
Name | Amount | |
---|---|---|
&=Data.Name | &=Data.Email | &=Data.Amount |
คู่มือทีละขั้นตอนในการทำ Mail Merge จาก Excel ใน C#
ในการทำการรวมจดหมายจาก Excel โดยใช้ Aspose.Cells for .NET ให้ทำตามขั้นตอนเหล่านี้:
ขั้นตอนที่ 1: โหลดเทมเพลต Excel
โหลดไฟล์แม่แบบ Excel ที่มี Smart Markers โดยใช้คลาส Workbook
คลาส Workbook
แทนทั้งไฟล์ Excel (สมุดงาน) ไฟล์แม่แบบที่โหลดจะทำหน้าที่เป็นเลย์เอาต์สำหรับผลลัพธ์ที่รวมของคุณ
Workbook workbook = new Workbook("Template.xlsx");
ขั้นตอนที่ 2: สร้าง DataTable
ที่นี่ เราสร้าง DataTable ที่จำลองแหล่งข้อมูล Excel ของคุณ แต่ละคอลัมน์ตรงกับไมเตอร์อัจฉริยะ และแต่ละแถวแทนหนึ่งชุดของค่าที่จะใส่ คลาส DataTable
จาก System.Data
ถือข้อมูลที่คุณต้องการรวม แต่ละคอลัมน์ตรงกับไมเตอร์อัจฉริยะ และแต่ละแถวให้ชุดค่าที่ไม่ซ้ำกัน
DataTable dt = new DataTable("Data");
dt.Columns.Add("Name");
dt.Columns.Add("Email");
dt.Columns.Add("Amount");
dt.Rows.Add("Alice", "alice@example.com", 1000);
dt.Rows.Add("Bob", "bob@example.com", 1500);
ขั้นตอนที่ 3: เชื่อมโยงเทมเพลต Excel ของคุณไปยังแหล่งข้อมูล
เราใช้คลาส WorkbookDesigner
เพื่อเชื่อมต่อแม่แบบกับข้อมูล คลาส WorkbookDesigner
เป็นคลาสพิเศษใน Aspose.Cells ที่ออกแบบมาเพื่อตั้งค่ามาร์กเกอร์อัจฉริยะและการจับคู่ข้อมูล มันเชื่อมโยงแหล่งข้อมูลของคุณ (เช่น DataTable) กับแม่แบบ Excel เมธอด SetDataSource()
ทำการเชื่อมโยง DataTable (Data) กับมาร์กเกอร์อัจฉริยะในสมุดงาน
WorkbookDesigner designer = new WorkbookDesigner(workbook);
designer.SetDataSource(dt);
SetDataSource()
เชื่อมโยง DataTable กับ Smart Markers ในเวิร์กบุ๊ก。"Data"
เป็นชื่อที่ใช้ในเครื่องหมายต่างๆ เช่น&=Data.Name
ขั้นตอนที่ 4: เรียกใช้ Mail Merge
เมื่อคุณได้กำหนดแหล่งข้อมูลแล้ว การเรียกใช้ Process()
จะทำให้เติมข้อมูล Smart Markers ทั้งหมดด้วยค่าจริงจาก DataTable คำสั่งนี้จะทำการรวมจดหมาย มันจะตรวจสอบ Smart Markers และแทนที่ด้วยค่าจริงจากแหล่งข้อมูล
designer.Process();
ขั้นตอนที่ 5: บันทึกไฟล์
สุดท้าย เราจะบันทึกไฟล์ที่เสร็จสมบูรณ์พร้อมข้อมูลทั้งหมดที่รวมอยู่ในนั้น
workbook.Save("MergedOutput.xlsx");
บันทึกผลลัพธ์ที่รวมกันเป็น PDF
คุณสามารถบันทึกเอกสาร Excel ที่รวมเข้าด้วยกันเป็น PDF ได้อย่างง่ายดายด้วยโค้ดเพียงบรรทัดเดียว
// Set PDF options
PdfSaveOptions options = new PdfSaveOptions();
// Save as PDF
workbook.Save("MergedDocument.pdf", SaveFormat.Pdf);
Complete C# Code to Mail Merge Data
// โหลดแม่แบบ Excel
Workbook workbook = new Workbook("Template.xlsx");
// สร้างข้อมูลตัวอย่าง
DataTable dt = new DataTable("Data");
dt.Columns.Add("Name");
dt.Columns.Add("Email");
dt.Columns.Add("Amount");
dt.Rows.Add("Alice", "alice@example.com", 1000);
dt.Rows.Add("Bob", "bob@example.com", 1200);
// ตั้งค่าต้นทางข้อมูล
WorkbookDesigner designer = new WorkbookDesigner(workbook);
designer.SetDataSource(dt);
// ประมวลผลป้ายอัจฉริยะ (การรวมจดหมาย)
designer.Process();
// Save the output
workbook.Save("MergedOutput.xlsx");
Output
ไฟล์ Excel ที่ส่งออกมีแถวสำหรับแต่ละรายการที่มีข้อมูลส่วนบุคคลที่ถูกกรอกแทนที่ตัวบ่งชี้อัจฉริยะ

การรวมอีเมลจาก Excel ใน C# - เอาต์พุต
รับใบอนุญาตฟรี
รับใบอนุญาตชั่วคราวฟรี ที่ให้คุณทดสอบฟีเจอร์ทั้งหมดของ Aspose.Cells for .NET โดยไม่มีข้อจำกัด มันเหมาะสำหรับคุณถ้าคุณกำลังประเมิน API สำหรับงานอัตโนมัติ เช่น การรวมเมล การรายงานใน Excel หรือการส่งออก PDF
การรวมเมล Excel ถึง Excel: แหล่งข้อมูลฟรี
นอกจากนี้นอกจากการใช้ Excel mail merge แล้ว เรายังมีทรัพยากรต่างๆ ที่จะช่วยให้คุณเข้าใจ Aspose.Cells for .NET ให้ลึกซึ้งยิ่งขึ้น ตรวจสอบเอกสารของเรา บทเรียน และฟอรัมของชุมชนเพื่อหารายละเอียดเพิ่มเติม
คำถามที่พบบ่อย (FAQs)
Q1: ฉันสามารถใช้การรวมจดหมายใน Excel ได้โดยไม่ต้องติดตั้ง Microsoft Office ได้หรือไม่?
ใช่, การรวมจดหมายไม่จำเป็นต้องใช้ Microsoft Office Aspose.Cells ทำงานอย่างอิสระและจัดการทุกอย่างผ่าน API ของตัวเอง
Q2: ความแตกต่างระหว่าง Smart Markers และ Word Merge Fields คืออะไร?
Smart Markers ทำงานภายใน Excel และปรับแต่งได้มากขึ้นสำหรับการขยายข้อมูลตามแถว ฟิลด์รวมเป็นเรื่องเฉพาะของ Word.
Q3: Can I merge from Excel to Word using Aspose?
ใช่ แต่คุณจะต้องใช้ Aspose.Words สำหรับสถานการณ์นั้น
Q4: เป็นไปได้หรือไม่ที่จะอัตโนมัติการสร้าง PDF จากการรวม Excel?
อย่างแน่นอน เพียงบันทึกสมุดงานสุดท้ายในรูปแบบ PDF โดยใช้ Aspose.Cells
ข้อสรุป
Mail merge from Excel offers a powerful way to generate dynamic, personalized documents using the familiar spreadsheet interface. In this blog post, we walked through the mail merge from Excel using C#. By using Aspose.Cells Smart Markers, you gain the flexibility to automate this process completely and generate thousands of invoices, certificates, or any structured reports.
หากคุณมีคำถามหรือจำเป็นต้องการความช่วยเหลือเพิ่มเติม โปรดอย่าลังเลที่จะติดต่อเราที่ free support forum.