真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

C#操作Excel數(shù)據(jù)透視表

一、概述

數(shù)據(jù)透視表(Pivot Table)是一種交互式的表,可以進(jìn)行某些計(jì)算,如求和與計(jì)數(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):

創(chuàng)新互聯(lián)公司主要從事網(wǎng)站設(shè)計(jì)、網(wǎng)站制作、網(wǎng)頁設(shè)計(jì)、企業(yè)做網(wǎng)站、公司建網(wǎng)站等業(yè)務(wù)。立足成都服務(wù)黑龍江,10余年網(wǎng)站建設(shè)經(jīng)驗(yàn),價格優(yōu)惠、服務(wù)專業(yè),歡迎來電咨詢建站服務(wù):18982081108

  1. 創(chuàng)建透視表
    1.1 創(chuàng)建數(shù)據(jù)緩存
    1.2創(chuàng)建數(shù)據(jù)透視表
    1.3添加行字段和列字段
    1.4添加值字段
    1.5設(shè)置樣式
  2. 設(shè)置行折疊、展開
  3. 設(shè)置字段升序、降序
  4. 刪除透視表

二、準(zhǔn)備工具

  • Spire.XLS for .NET(可支持80余種Excel內(nèi)置的數(shù)據(jù)透視表樣式)
    C# 操作Excel數(shù)據(jù)透視表
    PS:安裝后,注意在項(xiàng)目中引用Spire.XLS.dll再進(jìn)行代碼操作,dll文件在安裝路徑下的Bin文件夾中獲取。

    三、示例操作

    1.創(chuàng)建透視表

    C#

            //創(chuàng)建一個Workbook類實(shí)例,并加載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)量"], "求和項(xiàng):總產(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");

測試效果:
C# 操作Excel數(shù)據(jù)透視表

2. 設(shè)置行折疊、展開

C#

           //創(chuàng)建Workbook類對象,加載Excel文檔  
            Workbook workbook = new Workbook();
            workbook.LoadFromFile("數(shù)據(jù)透視表.xlsx");

            //獲取數(shù)據(jù)透視表  
            XlsPivotTable pivotTable = workbook.Worksheets[0].PivotTables[0] as XlsPivotTable;

            //計(jì)算數(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é)果:
C# 操作Excel數(shù)據(jù)透視表

3. 設(shè)置字段排序

這里支持三種不同類型的排序,可根據(jù)需要選擇相應(yīng)的排序類型。
C# 操作Excel數(shù)據(jù)透視表
C#

            //創(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é)果:
C# 操作Excel數(shù)據(jù)透視表

4. 刪除透視表

刪除透視表可通過以下兩種方法:
1)根據(jù)透視表名稱刪除
2)根據(jù)透視表索引刪除

C#

            //創(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é)果:
C# 操作Excel數(shù)據(jù)透視表

以上內(nèi)容為本次關(guān)于“Excel數(shù)據(jù)透視表的示例操作”的全部內(nèi)容,歡迎轉(zhuǎn)載(轉(zhuǎn)載請注明出處)
感謝閱讀!


網(wǎng)頁題目:C#操作Excel數(shù)據(jù)透視表
轉(zhuǎn)載注明:http://weahome.cn/article/jpjedi.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部