מיזוג דואר מ-Excel ב-C# | מיזוג דואר מ-Excel ל-Excel

Mail merge makes it easy to create personalized documents in bulk, such as letters, emails, invoices, or certificates. You start with a template and fill it using data from a spreadsheet. Each row in the Excel file generates a new document with the correct details in the right places. It is a smart way to automate repetitive tasks like sending out invoices or generating reports. In this post, we will show you how to perform a mail merge from Excel using C#. Let’s begin.

המאמר הזה עוסק בנושאים הבאים:

C# ספריית מיזוג דואר עבור Excel

אנחנו נשתמש ב- Aspose.Cells for .NET API כדי לבצע מיזוג דואר מתוך Excel ב-C#. הוא מציע כלים רבי עוצמה לעבודה עם קבצי Excel ישירות בקוד שלך. הוא מאפשר למפתחים ליצור, לקרוא ולעדכן גיליונות עבודה בקלות. אתה יכול גם לטפל במשימות מתקדמות כמו מיזוג דואר ללא בעיות. הספרייה מקלה על אוטומציה של Excel במהירות, גמישות ואמינות.

כדי להתחיל עם Aspose.Cells עבור .NET, עקוב אחר הוראות ההתקנה הפשוטות הללו:

  1. בבקשה הורד אותו מ- releases.
  2. התקן את הספריה באמצעות NuGet Package Manager עם הפקודה הבאה:
PM> Install-Package Aspose.Cells

איך עובד מיזוג דואר עם Aspose.Cells?

Aspose.Cells לא תומך ב־`מיזוג דואר באותה הצורה כמו Word. הוא מוסיף מיזוג דואר ל־Excel באמצעות Smart Markers. סמנים אלו משמשים כתוויות מציין מיקום בגיליון האלקטרוני, והספרייה מחליפה אותם בנתונים אמיתיים בזמן הריצה. במהלך עיבוד כל שורה ממקור הנתונים, היא ממלאת את התבנית ומרחיבה את התוכן באופן אוטומטי, ומאפשרת יצירה של מסמכים מותאמים אישית לחלוטין בעזרת מספר שורות קוד C# בלבד.

&=DataSource.ColumnName

במהלך העיבוד, Aspose.Cells מחליף את אלה בנתונים בפועל מתוך DataTable, List<T> או כל IEnumerable. לדוגמה, הספרייה מחליפה &=Data.Name עם ערכים מעמודת השם בטבלה הנתונים.

הכן את תבנית ה-Excel

צור קובץ Excel (למשל, Template.xlsx) עם סמני חכמה. הנה תבנית לדוגמה:

שםאימיילסכום
&=Data.Name&=Data.Email&=Data.Amount

מדריך שלב-אחר-שלב לביצוע מיזוג דואר מ- Excel ב- C#

כדי לבצע מיזוג דואר מ-Excel באמצעות Aspose.Cells עבור .NET, פשוט עקוב אחרי הצעדים הבאים:

שלב 1: טען את תבנית ה-Excel

טען את קובץ תבנית האקסל המכיל סמני חכמה באמצעות מחלקת Workbook. מחלקת Workbook מייצגת את כל קובץ האקסל (ספר עבודה).קובץ התבנית שנטען פועל כעיצוב עבור הפלט הממוזג שלך.

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: קישור תבנית האקסל שלך למקור הנתונים

אנחנו משתמשים ב-class WorkbookDesigner כדי לחבר את התבנית עם הנתונים. ה-WorkbookDesigner הוא class מיוחד ב-Aspose.Cells שנועד לטפל בסימני חכם וחיבור נתונים. הוא מקשר את מקור הנתונים שלך (כמו DataTable) עם התבנית של Excel. השיטה SetDataSource() קושרת את ה-DataTable (Data) עם הסימנים החכמים בקובץ העבודה.

WorkbookDesigner designer = new WorkbookDesigner(workbook);
designer.SetDataSource(dt);
  • SetDataSource() מחבר את ה-DataTable למרקרים חכמים בקובץ העבודה.
  • "Data" הוא השם שמשתמשים בו במאפיינים כמו &=Data.Name.

שלב 4: לבצע את המיזוג דוא"ל

ברגע שהגדרת את מקור הנתונים, קריאה ל- Process() ממלאה את כל הסמנים החכמים בערכים אמיתיים מה- DataTable. פקודה זו מבצעת את מיזוג המכתבים. היא עובר דרך הסמנים החכמים ומחליפה אותם בערכים אמיתיים ממקור הנתונים.

designer.Process();

צעד 5: שמור את הקובץ

לבסוף, אנו שומרים את הקובץ המושלם עם כל הנתונים המשולבים בתוכו.

workbook.Save("MergedOutput.xlsx");

שמור את הפלט הממוזג כפיי די אף

אתה יכול בקלות לשמור את מסמך ה-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");

// Create dummy 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", 1200);

// הגדר את מקור הנתונים
WorkbookDesigner designer = new WorkbookDesigner(workbook);
designer.SetDataSource(dt);

// לעבד סימנים חכמים (מיזוג דואר)
designer.Process();

// Save the output
workbook.Save("MergedOutput.xlsx");

Output

הקובץ Excel המוצא מכיל שורה עבור כל פריט עם נתונים מותאמים אישית המאכלסים במקום סימני חכמה.

מיזוג דואר מ- Excel ב- C# - פלט

מיזוג דואר מ- Excel ב- C# - פלט

קבל רישיון חינם

קבל רישיון זמני חינם שמאפשר לך לבדוק את כל הפיצ’רים של Aspose.Cells for .NET ללא מגבלות. זה אידיאלי אם אתה מעריך את ה-API עבור משימות אוטומטיות כמו מיזוג דוא"ל, דיווח ב-Excel, או ייצוא PDF.

מיזוג דואר מ-Excel ל-Excel: משאבים חינמיים

בנוסף למיזוג דואר ב-Excel, אנו מספקים משאבים שונים שיעזרו לך להעמיק את הבנתך ב-Aspose.Cells עבור .NET. עיין בתיעוד שלנו, מדריכים, ופורומים קהילתיים למידע נוסף.

שאלות נפוצות (FAQs)

Q1: האם ניתן להשתמש במיזוג דואר של Excel ללא התקנת Microsoft Office?

כן, מיזוג דואר אינו דורש את מיקרוסופט אופיס. Aspose.Cells פועל באופן עצמאי ומנהל הכל דרך ה- APIs שלו.

Q2: מה ההבדל בין סמנים חכמים לשדות מיזוג טקסט?

Smart Markers פועלים בתוך Excel והם יותר מתאימים להרחבת נתוני שורות. שדות מיזוג הם ספציפיים ל- Word.

Q3: Can I merge from Excel to Word using Aspose?

כן, אבל תצטרך את Aspose.Words עבור התרחיש הזה.

Q4: האם אפשר לאוטומט את יצירת ה-PDF ממיזוגי Excel?

בהחלט. פשוט שמור את חקר העבודה הסופי בפורמט PDF באמצעות Aspose.Cells.

סיכום

מיזוג דואר מ-Excel מציע דרך עוצמתית ליצירת מסמכים דינמיים ומותאמים אישית באמצעות ממשק גיליון נתונים המוכר. בפוסט זה בבלוג, עברנו על מיזוג הדואר מ-Excel בעזרת C#. באמצעות סמני חכם של Aspose.Cells, אתה מקבל את הגמישות לאוטומט לחלוטין את התהליך הזה וליצור אלפי חשבוניות, תעודות או כל דוח מבנה אחר.

אם יש לך שאלות נוספות או שאתה צריך עזרה נוספת, אל תהסס לפנות אלינו בפורום התמיכה ה חינמי.

ראה גם