ในบางกรณี คุณอาจจำเป็นต้องคัดลอกเวิร์กชีตภายในเวิร์กบุ๊ก Excel หรือจากเวิร์กบุ๊กหนึ่งไปยังอีกเวิร์กบุ๊กหนึ่ง ในทางกลับกัน การย้ายเวิร์กชีตเพื่อเปลี่ยนตำแหน่งภายในเวิร์กบุ๊กก็จำเป็นในสถานการณ์ต่างๆ เช่นกัน บทความนี้แสดงวิธีคัดลอกเวิร์กชีต Excel ใน C# เพื่อดำเนินการตามที่กล่าวถึงข้างต้นโดยทางโปรแกรม นอกจากนี้ยังครอบคลุมถึงวิธีการเปลี่ยนตำแหน่งของแผ่นงานในสมุดงาน Excel
- C# API เพื่อคัดลอกแผ่นงาน Excel - ดาวน์โหลดฟรี
- คัดลอกแผ่นงาน Excel ใน C#
- คัดลอกแผ่นงานจากสมุดงานหนึ่งไปยังอีกที่หนึ่ง
- ย้ายแผ่นงานจากตำแหน่งหนึ่งไปอีกตำแหน่งหนึ่ง
- รับใบอนุญาต API ฟรี
C# API เพื่อคัดลอกแผ่นงาน Excel - ดาวน์โหลดฟรี
ในการคัดลอกแผ่นงานในไฟล์ Excel เราจะใช้ประโยชน์จากความสามารถในการจัดการสเปรดชีตอันทรงพลังของ Aspose.Cells for .NET API ให้คุณสมบัติที่หลากหลายแก่คุณในการสร้างและประมวลผลไฟล์ Excel จากภายในแอปพลิเคชัน .NET ของคุณ คุณสามารถ ดาวน์โหลด ไบนารีของ API หรือติดตั้งโดยใช้ NuGet
PM> Install-Package Aspose.Cells
คัดลอกแผ่นงาน Excel ใน C#
ต่อไปนี้เป็นขั้นตอนในการคัดลอกแผ่นงานในสมุดงาน Excel โดยใช้ C#
- โหลดไฟล์ Excel โดยใช้คลาส Workbook
- ดึงแผ่นงานในวัตถุ WorksheetCollection จากคุณสมบัติ Workbook.Worksheets
- ใช้เมธอด WorksheetCollection.AddCopy(string) เพื่อคัดลอกเวิร์กชีตโดยระบุชื่อ
- บันทึกสมุดงานที่อัปเดตโดยใช้เมธอด Workbook.Save(string)
ตัวอย่างรหัส C# ต่อไปนี้แสดงวิธีการคัดลอกแผ่นงาน Excel ในสมุดงาน
// เปิดไฟล์ Excel ที่มีอยู่
Workbook wb = new Workbook("workbook.xlsx");
// สร้างวัตถุ WorksheetCollection โดยอ้างอิงถึงแผ่นงานของสมุดงาน
WorksheetCollection sheets = wb.Worksheets;
// คัดลอกข้อมูลไปยังแผ่นงานใหม่จากแผ่นงานที่มีอยู่ภายในสมุดงาน
sheets.AddCopy("Sheet1");
// บันทึกไฟล์ Excel
wb.Save("CopyWithinWorkbook.xlsx");
C #: คัดลอกแผ่นงาน Excel จากสมุดงานหนึ่งไปยังอีก
ตอนนี้ มาดูวิธีการคัดลอกแผ่นงานจากสมุดงาน Excel หนึ่งไปยังอีก ต่อไปนี้เป็นขั้นตอนในการดำเนินการนี้
- สร้างวัตถุของคลาส Workbook และโหลดไฟล์ Excel ต้นทาง
- สร้างวัตถุอื่นของคลาส Workbook และโหลดไฟล์ Excel ปลายทาง
- คัดลอกแผ่นงานจากต้นทางไปยังสมุดงานปลายทางโดยใช้เมธอด destinationWorkbook.Worksheets[int].Copy(sourceWorkbook.Worksheets[int])
- บันทึกสมุดงานปลายทางโดยใช้เมธอด Workbook.Save(string)
ตัวอย่างโค้ดต่อไปนี้แสดงวิธีการคัดลอกแผ่นงานจากสมุดงานหนึ่งไปยังอีกที่หนึ่งใน C#
// ไฟล์ Excel แบบโอเพ่นซอร์ส
Workbook sourceWorkbook = new Workbook("source.xlsx");
// เปิดไฟล์ Excel ปลายทาง
Workbook destinationWorkbook = new Workbook("destination.xlsx");
// คัดลอกแผ่นงานแรกของสมุดงานต้นทางไปยังสมุดงานปลายทาง
destinationWorkbook.Worksheets[0].Copy(sourceWorkbook.Worksheets[0]);
// บันทึกไฟล์ Excel
destinationWorkbook.Save("copy-worksheets.xlsx");
ย้ายตำแหน่งของแผ่นงาน Excel ใน C
อาจมีกรณีที่คุณต้องการจัดเรียงตำแหน่งของแผ่นงานในสมุดงานใหม่ คุณสามารถทำได้โดยย้ายแผ่นงานไปยังตำแหน่งที่ต้องการโดยระบุดัชนี ต่อไปนี้เป็นขั้นตอนในการย้ายแผ่นงาน Excel จากตำแหน่งหนึ่งไปอีกตำแหน่งหนึ่ง
- โหลดไฟล์ Excel โดยใช้คลาส Workbook
- ดึงแผ่นงานในวัตถุ WorksheetCollection โดยใช้คุณสมบัติ Workbook.Worksheets
- เข้าถึงแผ่นงานที่ต้องการจากคอลเลกชันแผ่นงานลงในวัตถุ แผ่นงาน
- ใช้เมธอด Worksheet.MoveTo(int) เพื่อย้ายเวิร์กชีตไปยังดัชนีที่ระบุ
- บันทึกสมุดงานที่อัปเดตโดยใช้เมธอด Workbook.Save(string)
ตัวอย่างโค้ดต่อไปนี้แสดงวิธีการย้ายแผ่นงาน Excel จากตำแหน่งหนึ่งไปยังอีกตำแหน่งหนึ่งโดยใช้ C#
// เปิดไฟล์ excel ที่มีอยู่
Workbook wb = new Workbook("workbook.xlsx");
// สร้างวัตถุ WorksheetCollection โดยอ้างอิงถึงแผ่นงานของสมุดงาน
WorksheetCollection sheets = wb.Worksheets;
// รับแผ่นงานแรก
Worksheet worksheet = sheets[0];
// ย้ายแผ่นงานแรกไปยังตำแหน่งที่สามในสมุดงาน
worksheet.MoveTo(2);
// บันทึกไฟล์ Excel
wb.Save("move-worksheet.xlsx");
C# API สำหรับการคัดลอกแผ่นงาน Excel - รับใบอนุญาตฟรี
คุณสามารถลองและประเมิน Aspose.Cells for .NET ได้ฟรีโดยขอ ใบอนุญาตชั่วคราว
บทสรุป
ในบทความนี้ คุณได้เรียนรู้วิธีคัดลอกแผ่นงาน Excel ภายในสมุดงานหรือจากสมุดงานหนึ่งไปยังอีกเล่มหนึ่งโดยใช้ C# นอกจากนี้ คุณได้เห็นวิธีการย้ายแผ่นงาน Excel จากตำแหน่งหนึ่งไปยังอีกตำแหน่งหนึ่งภายในสมุดงาน คุณสามารถสำรวจคุณลักษณะอื่นๆ ของ Aspose.Cells for .NET โดยใช้ เอกสารประกอบ ในกรณีที่คุณมีข้อสงสัย โปรดโพสต์ที่ ฟอรัม ของเรา