Dalam artikel ini, Anda akan mempelajari cara membuat Tabel Pivot di Excel di C#. Selain itu, kami akan membahas cara mengurutkan atau menyembunyikan data Pivot Table secara terprogram menggunakan Aspose.Cells for .NET - API .NET untuk membuat dan memanipulasi spreadsheet Excel tanpa memerlukan Microsoft Excel.

Tabel Pivot di Excel

Berbagai hal telah menjadi solusi digital dan otomatis untuk pembuatan dan manipulasi spreadsheet Excel banyak digunakan. Tabel Pivot di Excel banyak digunakan untuk meringkas dan menganalisis data. Sedangkan menyortir data di Tabel Pivot sangat berguna untuk pemeriksaan kritis terhadap data besar di spreadsheet Excel. Pengurutan data dalam Tabel Pivot dapat diterapkan untuk menyusun item menurut abjad (AZ atau ZA) untuk nilai teks atau dari nilai tertinggi ke terendah atau terendah ke tertinggi dalam kasus angka.

Berdasarkan pentingnya Tabel Pivot Excel, artikel ini bertujuan untuk menunjukkan kepada Anda cara:

  • buat Tabel Pivot di Excel melalui C#,
  • urutkan Tabel Pivot berdasarkan nilai bidang baris,
  • urutkan Tabel Pivot berdasarkan nilai bidang kolom,
  • dan sembunyikan baris Tabel Pivot.

Untuk demonstrasi, contoh spreadsheet Excel berikut akan digunakan di seluruh contoh.

Buat Tabel Pivot di Excel di C#

Buat Tabel Pivot di Excel di C#

Pertama mari kita periksa cara membuat Tabel Pivot Excel di C# menggunakan Aspose.Cells for .NET. Setelah kami membuat Tabel Pivot, kami akan menyembunyikan baris dan mengurutkan data berdasarkan kolomnya atau bidang baris. Contoh kode berikut menunjukkan cara membuat Tabel Pivot Excel.

Workbook wb = new Workbook("SampleExcel.xlsx");

// Memperoleh referensi lembar kerja yang baru ditambahkan
Worksheet sheet = wb.Worksheets[0];

PivotTableCollection pivotTables = sheet.PivotTables;

// PivotTable sumber
// Menambahkan PivotTable ke lembar kerja
int index = pivotTables.Add("=Sheet1!A1:C10", "E3", "PivotTable2");

//Mengakses instance dari PivotTable yang baru ditambahkan
PivotTable pivotTable = pivotTables[index];

// Total keseluruhan untuk baris tidak ditampilkan.
pivotTable.RowGrand = false;
pivotTable.ColumnGrand = false;

// Menyeret bidang pertama ke area baris.
pivotTable.AddFieldToArea(PivotFieldType.Row, 1);
PivotField rowField = pivotTable.RowFields[0];
rowField.IsAutoSort = true;
rowField.IsAscendSort = true;

// Menyeret bidang kedua ke area kolom.
pivotTable.AddFieldToArea(PivotFieldType.Column, 0);
PivotField colField = pivotTable.ColumnFields[0];
colField.NumberFormat = "dd/mm/yyyy";
colField.IsAutoSort = true;
colField.IsAscendSort = true;

// Menyeret bidang ketiga ke area data.
pivotTable.AddFieldToArea(PivotFieldType.Data, 2);

pivotTable.RefreshData();
pivotTable.CalculateData();
// end of PivotTable sumber

//Menyimpan file Excel
wb.Save("output.xlsx");

Keluaran

Buat Tabel Pivot di Excel di ASP.NET

C# Buat dan Urutkan Tabel Pivot Excel menurut Baris

Di bagian sebelumnya, kami hanya membuat Tabel Pivot menggunakan data di spreadsheet Excel. Sekarang, kita akan membuat Tabel Pivot lain dan menerapkan penyortiran pada data. Contoh kode berikut membuat dan mengurutkan PivotTable menurut nilai bidang baris “Makanan Laut”.

Workbook wb = new Workbook("SampleExcel.xlsx");

// Memperoleh referensi lembar kerja Excel.
Worksheet sheet = wb.Worksheets[0];

PivotTableCollection pivotTables = sheet.PivotTables;

// Menambahkan PivotTable ke lembar kerja Excel.
int index = pivotTables.Add("=Sheet1!A1:C10", "E3", "PivotTable2");

// Mengakses instance dari PivotTable yang baru ditambahkan.
PivotTable pivotTable = pivotTables[index];

// Total keseluruhan untuk baris tidak ditampilkan.
pivotTable.RowGrand = false;
pivotTable.ColumnGrand = false;

// Menyeret bidang pertama ke area baris.
pivotTable.AddFieldToArea(PivotFieldType.Row, 1);
PivotField rowField = pivotTable.RowFields[0];
rowField.IsAutoSort = true;
rowField.IsAscendSort = true;

// Menyeret bidang kedua ke area kolom.
pivotTable.AddFieldToArea(PivotFieldType.Column, 0);
PivotField colField = pivotTable.ColumnFields[0];
colField.NumberFormat = "dd/mm/yyyy";
colField.IsAutoSort = true;
colField.IsAscendSort = true;
colField.AutoSortField = 0;

// Menyeret bidang ketiga ke area data.
pivotTable.AddFieldToArea(PivotFieldType.Data, 2);

pivotTable.RefreshData();
pivotTable.CalculateData();

// Menyimpan file Excel.
wb.Save("output.xlsx");

Keluaran

Membuat dan Menyortir Tabel Pivot di Excel

Urutkan Tabel Pivot Excel berdasarkan Kolom di C#

Anda juga bisa mengurutkan data dalam Tabel Pivot berdasarkan nilai bidang kolom. Contoh kode C# berikut menerapkan penyortiran pada nilai bidang kolom “28/07/2000”.

Workbook wb = new Workbook("SampleExcel.xlsx");

// Memperoleh referensi lembar kerja Excel.
Worksheet sheet = wb.Worksheets[0];

PivotTableCollection pivotTables = sheet.PivotTables;

// Menambahkan PivotTable ke lembar kerja Excel.
int index = pivotTables.Add("=Sheet1!A1:C10", "E3", "PivotTable2");

// Mengakses instance dari PivotTable yang baru ditambahkan.
PivotTable pivotTable = pivotTables[index];

// Total keseluruhan untuk baris tidak ditampilkan.
pivotTable.RowGrand = false;
pivotTable.ColumnGrand = false;

// Menyeret bidang pertama ke area baris.
pivotTable.AddFieldToArea(PivotFieldType.Row, 1);
PivotField rowField = pivotTable.RowFields[0];
rowField.IsAutoSort = true;
rowField.IsAscendSort = true;
colField.AutoSortField = 0;

// Menyeret bidang kedua ke area kolom.
pivotTable.AddFieldToArea(PivotFieldType.Column, 0);
PivotField colField = pivotTable.ColumnFields[0];
colField.NumberFormat = "dd/mm/yyyy";
colField.IsAutoSort = true;
colField.IsAscendSort = true;

// Menyeret bidang ketiga ke area data.
pivotTable.AddFieldToArea(PivotFieldType.Data, 2);

pivotTable.RefreshData();
pivotTable.CalculateData();

// Menyimpan file Excel.
wb.Save("output.xlsx");

Keluaran

Sembunyikan Data di Tabel Pivot di Excel

Sembunyikan Baris Tabel Pivot di Excel di C#

Anda dapat menyembunyikan baris dalam Tabel Pivot Excel berdasarkan kondisi tertentu yang ingin Anda terapkan. Contoh kode berikut memperlihatkan cara menyembunyikan baris tertentu di Tabel Pivot menggunakan C#.

Workbook workbook = new Workbook("output.xlsx");
Worksheet worksheet = workbook.Worksheets[0];

var pivotTable = worksheet.PivotTables[0];
var dataBodyRange = pivotTable.DataBodyRange;
int currentRow = 1;
int rowsUsed = dataBodyRange.EndRow;

// Mengurutkan nilai secara menurun
PivotField field = pivotTable.RowFields[0];
field.IsAutoSort = true;
field.IsAscendSort = false;
field.AutoSortField = 0;

pivotTable.RefreshData();
pivotTable.CalculateData();

// Menyembunyikan baris dengan nilai kurang dari 15
while (currentRow < rowsUsed)
{
	Cell cell = worksheet.Cells[currentRow, 2];
	double score = Convert.ToDouble(cell.Value);
	if (score < 15)
	{
		worksheet.Cells.HideRow(currentRow);
	}
	currentRow++;
}

pivotTable.RefreshData();
pivotTable.CalculateData();

// Menyimpan file Excel
workbook.Save("PivotTableHideAndSort.xlsx");

Lihat dokumentasi Aspose.Cells for .NET untuk detail lebih lanjut tentang cara bekerja dengan Tabel Pivot di Excel menggunakan C# di aplikasi berbasis .NET apa pun. Hubungi kami di forum kami jika ada pertanyaan atau pertanyaan.

Kesimpulan

Pada artikel ini, Anda telah mempelajari cara membuat tabel pivot di file Excel menggunakan C#. Selanjutnya, Anda telah melihat cara mengurutkan atau menyembunyikan data dalam tabel pivot di Excel menggunakan C#. Anda dapat mempelajari lebih lanjut tentang Aspose.Cells for .NET menggunakan dokumentasi.

Lihat juga