欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

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

 更新時間:2018年04月06日 14:46:17   作者:E-iceblue  
這篇文章主要為大家詳細介紹了C#如何操作Excel數(shù)據透視表, 創(chuàng)建透視表、設置行折疊、展開等操作,具有一定的參考價值,感興趣的小伙伴們可以參考一下

一、概述

數(shù)據透視表(Pivot Table)是一種交互式的表,可以進行某些計算,如求和與計數(shù)等,可動態(tài)地改變透視表版面布置,也可以重新安排行號、列標和頁字段。當改變版面布置時,數(shù)據透視表也會按照新的布置來進行更新,可以說是一個功能強大的數(shù)據分析工具。因此,本篇文章將介紹在C# 中關于Excel數(shù)據透視表的操作示例,示例內容主要包含以下要點:

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

     (1)創(chuàng)建數(shù)據緩存

     (2)創(chuàng)建數(shù)據透視表

     (3)添加行字段和列字段

     (4)添加值字段

     (5)設置樣式

2.  設置行折疊、展開

3.  設置字段升序、降序

4.  刪除透視表

二、準備工具

Spire.XLS for .NET (可支持80余種Excel內置的數(shù)據透視表樣式)

PS:安裝后,注意在項目中引用Spire.XLS.dll再進行代碼操作,dll文件在安裝路徑下的Bin文件夾中獲取。

三、示例操作

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

 //創(chuàng)建一個Workbook類實例,并加載Excel文檔
Workbook workbook = new Workbook();
 workbook.LoadFromFile("test.xlsx");

 //獲取第一個工作表
 Worksheet sheet = workbook.Worksheets[0];

//為需要匯總和分析的數(shù)據創(chuàng)建緩存
CellRange dataRange = sheet.Range["A1:D10"];
PivotCache cache = workbook.PivotCaches.Add(dataRange);

//使用緩存創(chuàng)建數(shù)據透視表,并指定透視表的名稱以及在工作表中的位置
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;

//設置行字段的標題
pivotTable.Options.RowHeaderCaption = "月份";

//添加列字段
var col1 = pivotTable.PivotFields["產品"];
col1.Axis = AxisTypes.Column;   

//設置列字段的標題
pivotTable.Options.ColumnHeaderCaption = "產品";

//添加值字段
pivotTable.DataFields.Add(pivotTable.PivotFields["總產量"], "求和項:總產量", SubtotalTypes.Sum);

//設置透視表的樣式(Spire.XLS共支持80余種Excel內置的數(shù)據透視表樣式)
pivotTable.BuiltInStyle = PivotBuiltInStyles.PivotStyleDark13;

//保存并打開文檔
 workbook.SaveToFile("數(shù)據透視表.xlsx", ExcelVersion.Version2013);
 System.Diagnostics.Process.Start("數(shù)據透視表.xlsx");

測試結果:

2. 設置行折疊、展開

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

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

//計算數(shù)據 
pivotTable.CalculateData();

//展開”月份”字段下“2”的詳細信息 
(pivotTable.PivotFields["月份"] as Spire.Xls.Core.Spreadsheet.PivotTables.XlsPivotField).HideItemDetail("2", false);
//折疊”月份”字段下“3”的詳細信息
(pivotTable.PivotFields["月份"] as Spire.Xls.Core.Spreadsheet.PivotTables.XlsPivotField).HideItemDetail("3", true);

//保存并打開文檔 
workbook.SaveToFile("折疊、展開行.xlsx", ExcelVersion.Version2013);
System.Diagnostics.Process.Start("折疊、展開行.xlsx");

測試結果:

3. 設置字段排序

這里支持三種不同類型的排序,可根據需要選擇相應的排序類型。 

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

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

//對指定字段進行升序排序 
 pivotTable.PivotFields[2].SortType = PivotFieldSortType.Ascending;

 //保存并打開文檔 
workbook.SaveToFile("升序.xlsx", ExcelVersion.Version2013);
System.Diagnostics.Process.Start("升序.xlsx");

測試結果:

4. 刪除透視表

刪除透視表可通過以下兩種方法:

  •  根據透視表名稱刪除
  •  根據透視表索引刪除
//創(chuàng)建一個工作簿,并加載Excel文檔
 Workbook workbook = new Workbook();
 workbook.LoadFromFile("數(shù)據透視表.xlsx");

 //刪除第一張工作表上名稱為“PivotTable”的數(shù)據透視表 
workbook.Worksheets[0].PivotTables.Remove("PivotTable");

//刪除第一張工作表上索引為0即第一個數(shù)據透視表 
 //workbook.Worksheets[0].PivotTables.RemoveAt(0); 

//保存文檔 
 workbook.SaveToFile("刪除數(shù)據透視表.xlsx", ExcelVersion.Version2013);


測試結果:

以上內容為本次關于“Excel數(shù)據透視表的示例操作”的全部內容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。

相關文章

  • c#代碼自動修改解決方案下任意文件實例

    c#代碼自動修改解決方案下任意文件實例

    這篇文章主要介紹了c#代碼自動修改解決方案下任意文件實例,有需要的朋友可以參考一下
    2013-11-11
  • C#實現(xiàn)兩個exe程序之間通信詳解

    C#實現(xiàn)兩個exe程序之間通信詳解

    這篇文章主要為大家詳細介紹了C#如何使用SendMessage實現(xiàn)兩個程序之間的通信功能,文中的示例代碼簡潔易懂,需要的小伙伴可以參考下
    2023-07-07
  • C#多線程系列之工作流實現(xiàn)

    C#多線程系列之工作流實現(xiàn)

    本文詳細講解了C#實現(xiàn)多線程工作流的方法,文中通過示例代碼介紹的非常詳細。對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2022-02-02
  • UGUI實現(xiàn)ScrollView無限滾動效果

    UGUI實現(xiàn)ScrollView無限滾動效果

    這篇文章主要為大家詳細介紹了UGUI實現(xiàn)ScrollView無限滾動效果,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2019-02-02
  • c#訪問this關鍵字和base關鍵字示例

    c#訪問this關鍵字和base關鍵字示例

    this關鍵字引用類的當前實例。靜態(tài)成員方法中不能使用this關鍵字,this關鍵字只能在實例構造函數(shù)、實例方法或實例訪問器中使用。base關鍵字用于從派生類中訪問基類的成員。下面學習一下這二個關鍵字的使用方法
    2014-01-01
  • C#算法之實現(xiàn)阿姆斯特朗數(shù)

    C#算法之實現(xiàn)阿姆斯特朗數(shù)

    這篇文章介紹了C#實現(xiàn)阿姆斯特朗數(shù)的算法,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2022-02-02
  • c# 網絡編程之http

    c# 網絡編程之http

    這篇文章主要介紹了c# 提供一個HTTP服務的實現(xiàn)示例,幫助大家更好的理解和使用c#,感興趣的朋友可以了解下
    2021-02-02
  • C#獲取Description特性的擴展類詳解

    C#獲取Description特性的擴展類詳解

    這篇文章主要和大家詳細介紹一下C#獲取Description特性的擴展類,文中的示例代碼講解詳細,對我們學習有一定的幫助,需要的可以參考一下
    2022-06-06
  • C#判斷一天、一年已經過了百分之多少的方法

    C#判斷一天、一年已經過了百分之多少的方法

    這篇文章主要介紹了C#判斷一天、一年已經過了百分之多少的方法,涉及C#針對時間及日期的運算與判定技巧,具有一定參考借鑒價值,需要的朋友可以參考下
    2015-08-08
  • WinForm IP地址輸入框控件實現(xiàn)

    WinForm IP地址輸入框控件實現(xiàn)

    這篇文章主要為大家詳細介紹了WinForm IP地址輸入框控件的實現(xiàn)代碼,基于VS2010模擬windows系統(tǒng)自帶IP輸入框,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2018-05-05

最新評論