合併文檔能有效的簡化繁雜的文檔管理。在工作中,當我們遇到需要將多個Excel工作表合併爲一個工作表的時候,該怎麼來合併呢,本文將進一步介紹。
使用工具:Free Spire.XLS for .NET、Visual Studio 2013
PS: 編輯代碼前需要添加引用Spire.XLS.dll到項目程序中,並添加到命名空間
合併Excel表格分兩種,一是合併多個工作薄中的工作表到一個工作表;二是合併一個工作簿中的多個工作表爲一個工作表
一、從多個工作簿合併
using Spire.Xls;
namespace MergeWorksheet_XLS
{
class Program
{
static void Main(string[] args)
{
//創建一個Workbook類對象
Workbook newbook = new Workbook();
newbook.Version = ExcelVersion.Version2013;
//刪除文檔中的工作表(新創建的文檔默認包含3張工作表)
newbook.Worksheets.Clear();
//創建一個臨時的workbook,用於加載需要合併的Excel文檔
Workbook tempbook = new Workbook();
//加載需要合併的Excel文檔保存到數組
string[] excelFiles = new string[] { @"C:\Users\Administrator\Desktop\test.xlsx", @"C:\Users\Administrator\Desktop\sample.xlsx" };
//遍歷數組
for (int i = 0; i < excelFiles.Length; i++)
{
//載入Excel文檔
tempbook.LoadFromFile(excelFiles[i]);
//調用AddCopy方法,將文檔中所有工作表添加到新的workbook
foreach (Worksheet sheet in tempbook.Worksheets)
{
newbook.Worksheets.AddCopy(sheet);
}
}
//保存文檔
newbook.SaveToFile("MergeFiles.xlsx", ExcelVersion.Version2013);
}
}
}
合併前:
合併後:
二、從同一個工作簿合併
using Spire.Xls;
namespace MergeWorksheetsToOne_XLS
{
class Program
{
static void Main(string[] args)
{
//實例化一個Workbook類,加載Excel文檔
Workbook workbook = new Workbook();
workbook.LoadFromFile(@"C:\Users\Administrator\Desktop\test.xlsx");
//獲取第1、2張工作表
Worksheet sheet1 = workbook.Worksheets[0];
Worksheet sheet2 = workbook.Worksheets[1];
//複製第2張工作表內容到第1張工作表的指定區域中
sheet2.AllocatedRange.Copy(sheet1.Range[sheet1.LastRow +3, 1]);
//刪除第2張工作表
sheet2.Remove();
//重命名的工作表1
sheet1.Name = "外貿單證";
//保存並運行文檔
workbook.SaveToFile("MergeSheets.xlsx", ExcelVersion.Version2013);
System.Diagnostics.Process.Start("MergeSheets.xlsx");
}
}
}
合併前:
合併後:
以上合併方法爲本次關於合併Excel文檔的全部內容,如果喜歡歡迎轉載(轉載請註明出處)