前面的文章講述了如何來合并Excel工作表,那本文將接著上篇文章,介紹如何按工作表的指定范圍來拆分。
原Excel文檔如下:
C#
十多年的廣州網站建設經驗,針對設計、前端、開發、售后、文案、推廣等六對一服務,響應快,48小時及時工作處理。全網整合營銷推廣的優勢是能夠根據用戶設備顯示端的尺寸不同,自動調整廣州建站的顯示方式,使網站能夠適用不同顯示終端,在瀏覽器中調整網站的寬度,無論在任何一種瀏覽器上瀏覽網站,都能展現優雅布局與設計,從而大程度地提升瀏覽體驗。創新互聯從事“廣州網站設計”,“廣州網站推廣”以來,每個客戶項目都認真落實執行。
using Spire.Xls;
namespace splitworksheet
{
class Program
{
static void Main(string[] args)
{
//創建一個Workbook類對象,并加載Excel工作表,并獲取第一張工作表
Workbook bookOriginal = new Workbook();
bookOriginal.LoadFromFile("信息表.xlsx");
Worksheet sheet = bookOriginal.Worksheets[0];
//實例化一個新的Workbook對象,創建一個空的工作表,并獲取工作表一
Workbook newBook1 = new Workbook();
newBook1.CreateEmptySheets(1);
//獲取源excel工作表中第二行至第八行(銷售部)的數據,將它們復制到newBook1的第一個工作表
Worksheet newSheet1 = newBook1.Worksheets[0];
CellRange range1 = sheet.Range[2, 1, 8, sheet.LastColumn];
newSheet1.Copy(range1, newSheet1.Range[1, 1]);
//重復以上操作步驟
Workbook newBook2 = new Workbook();
newBook2.CreateEmptySheets(1);
Worksheet newSheet2 = newBook2.Worksheets[0];
CellRange range2 = sheet.Range[9, 1, 15, sheet.LastColumn];
newSheet2.Copy(range2, newSheet2.Range[1, 1]);
//刪除源excel文件中第二行到第十五行的數據,剩下行(研發部)的數據將被保存為另一個新的excel文件。注意這里的14代表的不是行號而是行數。
sheet.DeleteRow(2, 14);
//保存這三個excel文件并以部門的名字命名
newBook1.SaveToFile("銷售部.xlsx", ExcelVersion.Version2007);
newBook2.SaveToFile("人力資源部.xlsx", ExcelVersion.Version2007);
bookOriginal.SaveToFile("研發部.xlsx", ExcelVersion.Version2007);
}
}
}
運行程序后,生成以下文件:
PS:以上操作中,借助了組件Free Spire.XLS下載該組建后,在項目程序中添加引用Spire.XLS.dll到程序集中,同時在命名空間添加相應的using 指令。
如果喜歡,歡迎轉載(轉載請注明出處)