C# 複製(帶格式)Excel工作表

本文將介紹在C#中複製工作表數據的方法。對工作表的複製考慮了兩種情況來進行

  1. 在同一個工作簿內的不同工作表之間進行復制
  2. 在不同工作簿之間的不同工作表間進行復制
    這裏的複製是包含了複製數據、邊框、底紋、公式等原數據表格的所有內容
    另外,對於Excel表格數據的複製,除了針對整篇工作表的複製外,也可以只複製工作表中某一行或者列的數據。下面將詳細闡述代碼操作過程,方法供參考。
    使用工具:Free Spire.XLS for .NET(社區版)
    使用說明:安裝後,在項目程序中直接引用Spire.XLS.dll即可(dll文件可在安裝路徑下的Bin文件夾中獲取)
    測試文檔:
    C# 複製(帶格式)Excel工作表

一、在同一個工作簿內複製

using Spire.Xls;

namespace Copy2
{
    class Program
    {
        static void Main(string[] args)
        {
            //創建一個Workbook類對象,並加載Excel文件
            Workbook workbook = new Workbook();
            workbook.LoadFromFile("Sample.xlsx");
            //獲取第一個工作表sheet1
            Worksheet sheet1 = workbook.Worksheets[0];

            //添加一個新的工作表sheet2,並命名該工作表
            Worksheet sheet2 = workbook.Worksheets.Add("Copy");
            //將第一個工作表複製到新添加的工作表
            sheet2.CopyFrom(sheet1);

            //保存並打開文件
            workbook.SaveToFile("工作表複製.xlsx",FileFormat.Version2010);
            System.Diagnostics.Process.Start("工作表複製.xlsx");
        }
    }
}

測試結果:

C# 複製(帶格式)Excel工作表

二、跨工作簿複製

using Spire.Xls;

namespace CopyWorksheet_XLS
{
    class Program
    {
        static void Main(string[] args)
        {
            //創建工作簿1,並加載第一個Excel文件
            Workbook workbook1 = new Workbook();
            workbook1.LoadFromFile("Sample.xlsx");
            //獲取第一個工作表
            Worksheet sheet1 = workbook1.Worksheets[0];

            //創建工作簿2,並加載第二個Excel文件
            Workbook workbook2 = new Workbook();
            workbook2.LoadFromFile(@"C:\Users\Administrator\Desktop\sample2.xlsx");

            //調用方法AddCopy()將第一個Excel文件的sheet1複製到第二個Excel文件,並命名複製後的文件
            Worksheet sheet2 = workbook2.Worksheets.AddCopy(sheet1);
            sheet2.Name = "Copy";
            //保存並打開文件
            workbook2.SaveToFile("Report.xlsx");
            System.Diagnostics.Process.Start("Report.xlsx");
        }
    }
}

測試結果:
C# 複製(帶格式)Excel工作表

三、複製行或列

using Spire.Xls;

namespace InsertRow_s__XLS
{
    class Program
    {
        static void Main(string[] args)
        {
            //初始化Workbook類實例,並加載Excel 測試文檔
            Workbook workbook = new Workbook();
            workbook.LoadFromFile(@"C:\Users\Administrator\Desktop\Sample.xlsx");

            //獲取第一個工作表
            Worksheet worksheet = workbook.Worksheets[0];

            //新插入一行作爲第3行
            worksheet.InsertRow(3);
            //新插入一列作爲第8列
           // worksheet.InsertColumn(8);

            //將第一行數據複製到第三行
            worksheet.Copy(worksheet.Range["A1:H1"], worksheet.Range["A3:H3"], true);
            //將第二列數據複製到第八列
           // worksheet.Copy(worksheet.Range["B1:B27"],worksheet.Range["H1:H27"],true);          

            //保存並打開文檔
            workbook.SaveToFile("複製行.xlsx", ExcelVersion.Version2010);
            System.Diagnostics.Process.Start("複製行.xlsx");
        }
    }
}

測試結果:

1. 複製行

C# 複製(帶格式)Excel工作表

2.複製列
C# 複製(帶格式)Excel工作表

以上內容爲本次關於“C# 複製Excel工作表”的全部內容,歡迎轉載(轉載請註明出處)

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章