這篇文章主要介紹了C#怎么操作Excel數(shù)據(jù)透視表,具有一定借鑒價值,感興趣的朋友可以參考下,希望大家閱讀完這篇文章之后大有收獲,下面讓小編帶著大家一起了解一下。
一、概述
數(shù)據(jù)透視表(Pivot Table)是一種交互式的表,可以進(jìn)行某些計算,如求和與計數(shù)等,可動態(tài)地改變透視表版面布置,也可以重新安排行號、列標(biāo)和頁字段。當(dāng)改變版面布置時,數(shù)據(jù)透視表也會按照新的布置來進(jìn)行更新,可以說是一個功能強(qiáng)大的數(shù)據(jù)分析工具。因此,本篇文章將介紹在C# 中關(guān)于Excel數(shù)據(jù)透視表的操作示例,示例內(nèi)容主要包含以下要點(diǎn):
1. 創(chuàng)建透視表
(1)創(chuàng)建數(shù)據(jù)緩存
(2)創(chuàng)建數(shù)據(jù)透視表
(3)添加行字段和列字段
(4)添加值字段
(5)設(shè)置樣式
2. 設(shè)置行折疊、展開
3. 設(shè)置字段升序、降序
4. 刪除透視表
二、準(zhǔn)備工具
Spire.XLS for .NET (可支持80余種Excel內(nèi)置的數(shù)據(jù)透視表樣式)
PS:安裝后,注意在項目中引用Spire.XLS.dll再進(jìn)行代碼操作,dll文件在安裝路徑下的Bin文件夾中獲取。
三、示例操作
1.創(chuàng)建透視表
//創(chuàng)建一個Workbook類實例,并加載Excel文檔 Workbook workbook = new Workbook(); workbook.LoadFromFile("test.xlsx"); //獲取第一個工作表 Worksheet sheet = workbook.Worksheets[0]; //為需要匯總和分析的數(shù)據(jù)創(chuàng)建緩存 CellRange dataRange = sheet.Range["A1:D10"]; PivotCache cache = workbook.PivotCaches.Add(dataRange); //使用緩存創(chuàng)建數(shù)據(jù)透視表,并指定透視表的名稱以及在工作表中的位置 PivotTable pivotTable = sheet.PivotTables.Add("PivotTable", sheet.Range["A12"], cache); //添加行字段 var r1 = pivotTable.PivotFields["月份"]; r1.Axis = AxisTypes.Row; var r2 = pivotTable.PivotFields["廠商"]; r2.Axis = AxisTypes.Row; //設(shè)置行字段的標(biāo)題 pivotTable.Options.RowHeaderCaption = "月份"; //添加列字段 var col1 = pivotTable.PivotFields["產(chǎn)品"]; col1.Axis = AxisTypes.Column; //設(shè)置列字段的標(biāo)題 pivotTable.Options.ColumnHeaderCaption = "產(chǎn)品"; //添加值字段 pivotTable.DataFields.Add(pivotTable.PivotFields["總產(chǎn)量"], "求和項:總產(chǎn)量", SubtotalTypes.Sum); //設(shè)置透視表的樣式(Spire.XLS共支持80余種Excel內(nèi)置的數(shù)據(jù)透視表樣式) pivotTable.BuiltInStyle = PivotBuiltInStyles.PivotStyleDark13; //保存并打開文檔 workbook.SaveToFile("數(shù)據(jù)透視表.xlsx", ExcelVersion.Version2013); System.Diagnostics.Process.Start("數(shù)據(jù)透視表.xlsx");
測試結(jié)果:
2. 設(shè)置行折疊、展開
//創(chuàng)建Workbook類對象,加載Excel文檔 Workbook workbook = new Workbook(); workbook.LoadFromFile("數(shù)據(jù)透視表.xlsx"); //獲取數(shù)據(jù)透視表 XlsPivotTable pivotTable = workbook.Worksheets[0].PivotTables[0] as XlsPivotTable; //計算數(shù)據(jù) pivotTable.CalculateData(); //展開”月份”字段下“2”的詳細(xì)信息 (pivotTable.PivotFields["月份"] as Spire.Xls.Core.Spreadsheet.PivotTables.XlsPivotField).HideItemDetail("2", false); //折疊”月份”字段下“3”的詳細(xì)信息 (pivotTable.PivotFields["月份"] as Spire.Xls.Core.Spreadsheet.PivotTables.XlsPivotField).HideItemDetail("3", true); //保存并打開文檔 workbook.SaveToFile("折疊、展開行.xlsx", ExcelVersion.Version2013); System.Diagnostics.Process.Start("折疊、展開行.xlsx");
測試結(jié)果:
3. 設(shè)置字段排序
這里支持三種不同類型的排序,可根據(jù)需要選擇相應(yīng)的排序類型。
//創(chuàng)建一個Workbook類對象,并加載Excel文檔 Workbook workbook = new Workbook(); workbook.LoadFromFile("數(shù)據(jù)透視表.xlsx"); //獲取數(shù)據(jù)透視表 Spire.Xls.Core.Spreadsheet.PivotTables.XlsPivotTable pivotTable = workbook.Worksheets[0].PivotTables[0] as Spire.Xls.Core.Spreadsheet.PivotTables.XlsPivotTable; //對指定字段進(jìn)行升序排序 pivotTable.PivotFields[2].SortType = PivotFieldSortType.Ascending; //保存并打開文檔 workbook.SaveToFile("升序.xlsx", ExcelVersion.Version2013); System.Diagnostics.Process.Start("升序.xlsx");
測試結(jié)果:
4. 刪除透視表
刪除透視表可通過以下兩種方法:
根據(jù)透視表名稱刪除
根據(jù)透視表索引刪除
//創(chuàng)建一個工作簿,并加載Excel文檔 Workbook workbook = new Workbook(); workbook.LoadFromFile("數(shù)據(jù)透視表.xlsx"); //刪除第一張工作表上名稱為“PivotTable”的數(shù)據(jù)透視表 workbook.Worksheets[0].PivotTables.Remove("PivotTable"); //刪除第一張工作表上索引為0即第一個數(shù)據(jù)透視表 //workbook.Worksheets[0].PivotTables.RemoveAt(0); //保存文檔 workbook.SaveToFile("刪除數(shù)據(jù)透視表.xlsx", ExcelVersion.Version2013);
測試結(jié)果:
感謝你能夠認(rèn)真閱讀完這篇文章,希望小編分享的“C#怎么操作Excel數(shù)據(jù)透視表”這篇文章對大家有幫助,同時也希望大家多多支持創(chuàng)新互聯(lián)成都做網(wǎng)站,關(guān)注創(chuàng)新互聯(lián)成都做網(wǎng)站行業(yè)資訊頻道,更多相關(guān)知識等著你來學(xué)習(xí)!
另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)scvps.cn,海內(nèi)外云服務(wù)器15元起步,三天無理由+7*72小時售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國服務(wù)器、虛擬主機(jī)、免備案服務(wù)器”等云主機(jī)租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡單易用、服務(wù)可用性高、性價比高”等特點(diǎn)與優(yōu)勢,專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應(yīng)用場景需求。
名稱欄目:C#怎么操作Excel數(shù)據(jù)透視表-創(chuàng)新互聯(lián)
網(wǎng)頁網(wǎng)址:http://jinyejixie.com/article28/dphojp.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供外貿(mào)網(wǎng)站建設(shè)、品牌網(wǎng)站制作、品牌網(wǎng)站設(shè)計、網(wǎng)站設(shè)計公司、品牌網(wǎng)站建設(shè)、網(wǎng)站策劃
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)
猜你還喜歡下面的內(nèi)容