1. 程式人生 > 其它 >Epplus c# to excel 的 入門學習(一)

Epplus c# to excel 的 入門學習(一)

Epplus 的 入門學習

winform的介面

參考資料:

匯出Excel之Epplus使用教程1(基本介紹) - Wico - 部落格園 (cnblogs.com)

匯出Excel之Epplus使用教程1(基本介紹)

1、前言

目前Epplus的介紹中文資料很少,我也一直在摸索中使用它,以下是我在使用過程中得到的經驗,寫出來供大家參考。本系列共4章:

匯出Excel之Epplus使用教程1(基本介紹)

匯出Excel之Epplus使用教程2(樣式設定)

匯出Excel之Epplus使用教程3(圖表設定)

匯出Excel之Epplus使用教程4(其他設定)

2、Epplus介紹

EPPlus是一個使用Open Office XML(xlsx)檔案格式,能讀寫Excel 2007/2010 檔案的開源元件,在匯出Excel的時候不需要電腦上安裝office,官網為:http://epplus.codeplex.com/。需要使用的Epplus的DLL檔案,從官網上下載下來即可。基本上Excel上的各種功能(例如圖表、VBA、資料透視表、加密、資料驗證等)Epplus都能實現,它的一個缺點就是不支援匯出2003版的Excel。

3、建立Excel

首先將epplus的dll檔案新增到專案裡,然後新增引用即可。

建立Excel,所有程式碼均放在這個using語句裡面,在using語句裡面我們可以建立多個worksheet,ExcelPackage後面可以傳入路徑引數:

1 using(ExcelPackage package=newExcelPackage(newFileInfo(@"d:\test.xlsx"))){ } 

  建立worksheet:

1 2 3 4 using(ExcelPackage package=newExcelPackage(newFileInfo(@"d:\test.xlsx"))) { ExcelWorksheet worksheet = package.Workbook.Worksheets.Add("test");//建立worksheet }

 儲存Excel: 

1 2 3 4 5 using(ExcelPackage package =newExcelPackage(newFileInfo(@"d:\test.xlsx"))) { ExcelWorksheet worksheet = package.Workbook.Worksheets.Add("test");//建立worksheet package.Save();//儲存excel }

 至此,一個基本的excel已經完工,下面就是填入資料了。

4、新增資料

Epplus中給單元格賦值非常簡單,兩種方法:(ps:Epplus的所有行列數都是以1開始的)

1 2 worksheet.Cells[1, 1].Value ="名稱";//直接指定行列數進行賦值 worksheet.Cells["A1"].Value ="名稱";//直接指定單元格進行賦值

 下面是一個完整的輸出一個簡單的excel的程式碼:

 FileInfo newFile = new FileInfo(@"d:\test.xlsx");
            if (newFile.Exists)
            {
                newFile.Delete();
                newFile = new FileInfo(@"d:\test.xlsx");
            }
            using (ExcelPackage package = new ExcelPackage(newFile))
            {
                ExcelWorksheet worksheet = package.Workbook.Worksheets.Add("test");
                worksheet.Cells[1, 1].Value = "名稱";
                worksheet.Cells[1, 2].Value = "價格";
                worksheet.Cells[1, 3].Value = "銷量";

                worksheet.Cells[2, 1].Value = "大米";
                worksheet.Cells[2, 2].Value = 56;
                worksheet.Cells[2, 3].Value = 100;

                worksheet.Cells[3, 1].Value = "玉米";
                worksheet.Cells[3, 2].Value = 45;
                worksheet.Cells[3, 3].Value = 150;

                worksheet.Cells[4, 1].Value = "小米";
                worksheet.Cells[4, 2].Value = 38;
                worksheet.Cells[4, 3].Value = 130;

                worksheet.Cells[5, 1].Value = "糯米";
                worksheet.Cells[5, 2].Value = 22;
                worksheet.Cells[5, 3].Value = 200;

                package.Save();
            }