บทช่วยสอนสั้นๆ นี้จะอธิบายวิธีการผสานเซลล์ใน Word โดยใช้ C#** โดยมีรายละเอียดในการตั้งค่า IDE รายการขั้นตอน ฟังก์ชันที่กำหนดไว้ล่วงหน้าสำหรับการรวมเซลล์ และตัวอย่างโค้ดที่แสดง วิธีการผสานตารางใน Word โดยใช้ C# ด้วยความช่วยเหลือของฟังก์ชันที่กำหนดไว้ล่วงหน้านี้ ไม่จำเป็นต้องใช้เครื่องมืออื่นจากบริษัทอื่นเพื่อทำภารกิจนี้ให้สำเร็จ
ขั้นตอนในการผสานเซลล์ในตาราง Word โดยใช้ C#
- ตั้งค่า IDE ให้ใช้ Aspose.Words for .NET เพื่อรวมเซลล์ในตาราง
- ประกาศวิธีการ MergeCells ที่กำหนดไว้ล่วงหน้าเพื่อใช้ในแอปพลิเคชันของคุณ
- โหลดไฟล์ Word ต้นฉบับลงในอ็อบเจ็กต์ Document ที่มีตารางหนึ่งตารางขึ้นไปอยู่ในนั้น
- เข้าถึงตารางในไฟล์ Word ที่โหลดเพื่อผสานเซลล์
- เข้าถึง cell เริ่มต้นของช่วงการผสานเป้าหมาย
- เข้าถึงเซลล์สิ้นสุดของช่วงการผสาน
- เรียกใช้เมธอด MergeCells() โดยระบุเซลล์เริ่มต้นและเซลล์สิ้นสุด และบันทึกเอกสาร
ขั้นตอนเหล่านี้ช่วยในการผสานเซลล์ใน Word โดยใช้ C# เพิ่มวิธีที่กำหนดไว้ล่วงหน้าในโปรเจ็กต์ของคุณแล้วเรียกใช้โดยระบุเซลล์เริ่มต้นและเซลล์สิ้นสุดที่คุณต้องการผสาน วิธีนี้จะเปลี่ยนแปลงไฟล์ต้นฉบับ ดังนั้น คุณสามารถบันทึกไฟล์ Word ที่โหลดด้วยชื่ออื่นโดยมีเซลล์ที่ผสานแล้ว
โค้ดสำหรับการรวมเซลล์ใน Word โดยใช้ C#
using System; | |
using System.Drawing; | |
using Aspose.Words; | |
using Aspose.Words.Tables; | |
class Program | |
{ | |
static void MergeCells(Cell startCell, Cell endCell) | |
{ | |
Table parentTable = startCell.ParentRow.ParentTable; | |
// Find the start and end cell | |
Point startingCell = new Point(startCell.ParentRow.IndexOf(startCell), parentTable.IndexOf(startCell.ParentRow)); | |
Point endingCell = new Point(endCell.ParentRow.IndexOf(endCell), parentTable.IndexOf(endCell.ParentRow)); | |
// Create a range of cells | |
Rectangle mergeRange = new Rectangle(Math.Min(startingCell.X, endingCell.X),Math.Min(startingCell.Y, endingCell.Y), | |
Math.Abs(endingCell.X - startingCell.X) + 1, Math.Abs(endingCell.Y - startingCell.Y) + 1); | |
foreach (Row currentRow in parentTable.Rows) | |
{ | |
foreach (Cell currentCell in currentRow.Cells) | |
{ | |
Point currentPos = new Point(currentRow.IndexOf(currentCell), parentTable.IndexOf(currentRow)); | |
// Check if the current cell is inside the range | |
if (mergeRange.Contains(currentPos)) | |
{ | |
currentCell.CellFormat.HorizontalMerge = currentPos.X == mergeRange.X ? CellMerge.First : CellMerge.Previous; | |
currentCell.CellFormat.VerticalMerge = currentPos.Y == mergeRange.Y ? CellMerge.First : CellMerge.Previous; | |
} | |
} | |
} | |
} | |
static void Main(string[] args) | |
{ | |
License lic = new License(); | |
lic.SetLicense("license.lic"); | |
Document doc = new Document("Table.docx"); | |
Table table = doc.FirstSection.Body.Tables[0]; | |
// Define starting and ending cells | |
Cell cellStartRange = table.Rows[0].Cells[0]; | |
Cell cellEndRange = table.Rows[1].Cells[1]; | |
// Merge all the cells | |
MergeCells(cellStartRange, cellEndRange); | |
doc.Save("Output.docx"); | |
} | |
} |
โค้ดนี้สาธิตวิธีรวมตารางใน Word โดยใช้ C# เราได้เพิ่มเมธอด MergeCells ที่กำหนดไว้ล่วงหน้าพร้อมกับคำจำกัดความของมัน จากนั้นเรียกใช้ในแอปพลิเคชันของเราเมื่อใดก็ตามที่ต้องการ คุณสามารถเลือกส่วน รายชื่อตารางในส่วนนั้น และเข้าถึงตารางเป้าหมายโดยใช้ดัชนีเพื่อเลือกเซลล์เริ่มต้นและเซลล์สิ้นสุดสำหรับการผสาน คุณสามารถทำซ้ำขั้นตอนนี้เพื่อผสานเซลล์ได้มากเท่าที่ต้องการ
เราได้เรียนรู้วิธีการผสานเซลล์ใน Microsoft Word โดยใช้ C# แล้ว หากคุณต้องการผสานเอกสาร Word ทั้งหมด โปรดดูบทความใน วิธีการรวมเอกสาร Word โดยใช้ C#