Този кратък урок ръководи как да създадете обобщена таблица в Excel с помощта на C#. За създаване на обобщена таблица програмно C# са предоставени код и подробно описание, така че в края ще получите XLSX (или XLS) файл с обобщена таблица в него, без да използвате друга трета - парти инструмент. Той също така съдържа стъпки, които ръководят добавянето на различни полета към различни области в обобщената таблица.
Стъпки за създаване на обобщена таблица в C#
- Създайте среда за добавяне на Aspose.Cells for .NET от мениджъра на пакети NuGet за създаване на обобщена таблица
- Създайте или заредете съществуваща workbook с данни за обобщената таблица
- Получете достъп до целта worksheet, където трябва да се добави обобщената таблица
- Създайте обобщена таблица и получете нейния екземпляр за по-нататъшна обработка
- Конфигурирайте новата обобщена таблица и добавете различни полета към колоната, реда и областта с данни
- Запазете получената работна книга с обобщена таблица в нея
След установяване на средата за генериране на C# Excel обобщена таблица е описано тук, така че ние създаваме нова работна книга тук с твърдо кодирани данни, но можете да заредите съществуващ Excel файл, който също има целеви данни в него. В следващите стъпки той допълнително описва процеса на създаване на обобщена таблица и след това нейната конфигурация. В последните стъпки различни полета се добавят към различни области в обобщената таблица като колона, ред и данни.
Код за създаване на обобщена таблица в Excel с помощта на C#
using System.IO; | |
using System.Text; | |
using Aspose.Cells; | |
namespace CreatePivotTableInExcelUsingCSharp | |
{ | |
class Program | |
{ | |
static void Main(string[] args) // Main function to set width of cell in CSharp | |
{ | |
// Instantiate the license to remove trial version watermark in the output Excel file | |
Aspose.Cells.License licForCells= new Aspose.Cells.License(); | |
licForCells.SetLicense("Aspose.Cells.lic"); | |
// Set the hard-coded data. You may use an existing Excel file also if required | |
byte[] SrcDataByteArray = Encoding.ASCII.GetBytes( | |
$@"City,Product,Sales | |
Paris,Cream,2300 | |
Paris,Lotion,1600 | |
Tunis,Cream,900 | |
Tunis,Lotion,1400 | |
Tunis,Cream,3090 | |
Tunis,Lotion,6000 | |
Paris,Cream,4320" ); | |
// Create a memory stream from the source data | |
MemoryStream dataStream = new MemoryStream( SrcDataByteArray ); | |
// Create LoadOptions class object to load the comma-separated data given above | |
LoadOptions loadOptions = new LoadOptions(LoadFormat.Csv); | |
// Instantiate a workbook class object having above mentioned data | |
Workbook wbCSV = new Workbook(dataStream, loadOptions); | |
// Get access to the first worksheet in the collection | |
Worksheet targetSheet = wbCSV.Worksheets[0]; | |
// Get collection of pivot tables in the target worksheet | |
Aspose.Cells.Pivot.PivotTableCollection pvTablesCollection = targetSheet.PivotTables; | |
// Get pivot table index after adding a new pivot table by provding source data range and destination cell | |
int iNewPivotTable = pvTablesCollection.Add("=A1:C8", "F3", "MyPivotTable"); | |
// Get the instance of newly added pivot table for further processing | |
Aspose.Cells.Pivot.PivotTable newPivotTable = pvTablesCollection[iNewPivotTable]; | |
// Hide the grand total for rows in the output Excel file | |
newPivotTable.RowGrand = false; | |
// Add the first field to the column area | |
newPivotTable.AddFieldToArea(Aspose.Cells.Pivot.PivotFieldType.Column, 0); | |
// Add the second field to the row area | |
newPivotTable.AddFieldToArea(Aspose.Cells.Pivot.PivotFieldType.Row, 1); | |
// Add the third field to the data area | |
newPivotTable.AddFieldToArea(Aspose.Cells.Pivot.PivotFieldType.Data, 2); | |
// Saving the output Excel file with pivot table | |
wbCSV.Save("OutputPivotTable.xlsx"); | |
System.Console.WriteLine("Done"); | |
} | |
} | |
} |
Този примерен код демонстрира как да създадете основна таблица в C#, като предоставите диапазона от данни и целевата клетка, където трябва да бъде поставена обобщената таблица, заедно с името на обобщената таблица. Класът pivotTable има функция AddFieldToArea(), която се използва за плъзгане на различни полета в различни области с помощта на pivotFieldType като колона, ред или данни заедно с номера на полето в избрания диапазон от данни. Можете също да използвате друга страница pivotFieldType, ако е необходимо.
В тази статия се научихме да добавяме обобщена таблица на Excel в C#. Ако искате да се научите да експортирате данни в списък към Excel, вижте статията на как да експортирате данни от списък в Excel в C#.