การเรียงลำดับตารางสรุปข้อมูลแบบกำหนดเองด้วยโปรแกรมใน .NET
การแนะนำ
เมื่อต้องทำงานกับ Excel ในสภาพแวดล้อม .NET ไลบรารี่หนึ่งที่โดดเด่นกว่าไลบรารี่อื่นๆ นั่นก็คือ Aspose.Cells คุณคงชอบที่เครื่องมือนี้ช่วยให้คุณจัดการสเปรดชีตด้วยโปรแกรมใช่ไหม นั่นคือสิ่งที่ Aspose.Cells ทำได้ ในบทช่วยสอนของวันนี้ เราจะเจาะลึกเข้าไปในโลกของ Pivot Table และแสดงให้คุณเห็นถึงวิธีการนำการเรียงลำดับแบบกำหนดเองไปใช้ในโปรแกรมโดยใช้ไลบรารี่เอนกประสงค์นี้
ข้อกำหนดเบื้องต้น
ก่อนที่เราจะเริ่มลงมือเขียนโค้ด โปรดตรวจสอบให้แน่ใจว่าคุณมีบางสิ่งบางอย่างพร้อมแล้ว:
- Visual Studio: คุณต้องมี Visual Studio เวอร์ชันที่ใช้งานได้จริง ซึ่งเป็นสนามเด็กเล่นที่ทำให้เกิดความมหัศจรรย์ทั้งหมด
- .NET Framework: ความคุ้นเคยกับการเขียนโปรแกรม .NET ถือเป็นสิ่งสำคัญ ไม่ว่าคุณจะเป็นผู้ที่ชื่นชอบ .NET Core หรือ .NET Framework คุณก็พร้อมแล้ว
- ไลบรารี Aspose.Cells: คุณต้องติดตั้งไลบรารี Aspose.Cells คุณสามารถรับได้จากลิงค์ดาวน์โหลด และเพิ่มมันลงในโครงการของคุณ
- ความเข้าใจพื้นฐานเกี่ยวกับ Pivot Table: แม้ว่าคุณไม่จำเป็นต้องเป็นผู้เชี่ยวชาญ ความรู้เพียงเล็กน้อยเกี่ยวกับวิธีการทำงานของ Pivot Table จะเป็นประโยชน์เมื่อเราทำตามบทช่วยสอนนี้
- ตัวอย่างไฟล์ Excel: มีไฟล์ Excel ตัวอย่างชื่อ
SamplePivotSort.xlsx
พร้อมอยู่ในไดเร็กทอรีการทำงานของคุณสำหรับการทดสอบ
แพ็คเกจนำเข้า
เมื่อคุณจัดเตรียมข้อกำหนดเบื้องต้นทั้งหมดเรียบร้อยแล้ว ขั้นตอนแรกคือการนำเข้าแพ็คเกจที่จำเป็น โดยให้รวมบรรทัดต่อไปนี้ไว้ที่ด้านบนของโค้ดของคุณ:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using Aspose.Cells;
using Aspose.Cells.Pivot;
แพ็คเกจนี้ประกอบด้วยฟังก์ชันทั้งหมดที่คุณต้องการในการจัดการไฟล์ Excel โดยใช้ Aspose.Cells
เอาล่ะ มาเริ่มกันที่ส่วนสนุก ๆ กันเลย เราจะมาแบ่งกระบวนการสร้าง Pivot Table และการใช้การเรียงลำดับแบบกำหนดเองออกเป็นขั้นตอนที่สามารถจัดการได้
ขั้นตอนที่ 1: ตั้งค่าเวิร์กบุ๊ก
ในการเริ่มต้น เราจะต้องตั้งค่าเวิร์กบุ๊กของเราก่อน โดยทำได้ดังนี้:
string sourceDir = "Your Document Directory";
string outputDir = "Your Document Directory";
Workbook wb = new Workbook(sourceDir + "SamplePivotSort.xlsx");
ในขั้นตอนนี้เราจะเริ่มต้นใหม่Workbook
อินสแตนซ์ที่มีเส้นทางไปยังไฟล์ Excel ของเรา ซึ่งทำหน้าที่เป็นพื้นที่ที่ตารางสรุปข้อมูลของเราจะทำงานได้
ขั้นตอนที่ 2: เข้าถึงแผ่นงาน
ต่อไปเราต้องเข้าถึงเวิร์กชีตที่เราจะเพิ่มตารางสรุปข้อมูล
Worksheet sheet = wb.Worksheets[0];
PivotTableCollection pivotTables = sheet.PivotTables;
ที่นี่ เราคว้าแผ่นงานแรกในสมุดงานของเราและเรียกใช้PivotTableCollection
คอลเลกชันนี้ช่วยให้เราจัดการตารางสรุปข้อมูลทั้งหมดบนเวิร์กชีตนี้ได้
ขั้นตอนที่ 3: สร้างตารางสรุปข้อมูลแรกของคุณ
ตอนนี้ถึงเวลาสร้าง Pivot Table ของเราแล้ว
int index = pivotTables.Add("=Sheet1!A1:C10", "E3", "PivotTable1");
PivotTable pivotTable = pivotTables[index];
เราเพิ่ม Pivot Table ใหม่ลงในเวิร์กชีตโดยระบุช่วงข้อมูลและตำแหน่งของช่วงข้อมูล “E3” ระบุตำแหน่งที่เราต้องการให้ Pivot Table เริ่มต้น จากนั้นจึงอ้างอิง Pivot Table ใหม่นี้โดยใช้ดัชนี
ขั้นตอนที่ 4: กำหนดค่าการตั้งค่าตารางสรุปข้อมูล
มาตั้งค่า Pivot Table ของเรากันเถอะ! ซึ่งหมายถึงการควบคุมด้านต่างๆ เช่น ยอดรวมและการจัดเรียงข้อมูลในฟิลด์
pivotTable.RowGrand = false;
pivotTable.ColumnGrand = false;
pivotTable.AddFieldToArea(PivotFieldType.Row,1);
PivotField rowField = pivotTable.RowFields[0];
rowField.IsAutoSort = true;
rowField.IsAscendSort = true;
เราตรวจสอบให้แน่ใจว่าผลรวมทั้งหมดของแถวและคอลัมน์จะไม่ปรากฏ ซึ่งอาจทำให้ข้อมูลดูสะอาดขึ้น จากนั้นเราจะเพิ่มฟิลด์แรกลงในพื้นที่แถว เปิดใช้งานการเรียงลำดับอัตโนมัติและการเรียงลำดับแบบเรียงจากน้อยไปมาก
ขั้นตอนที่ 5: เพิ่มคอลัมน์และฟิลด์ข้อมูล
เมื่อกำหนดแถวแล้ว ให้เราเพิ่มคอลัมน์และฟิลด์ข้อมูล
pivotTable.AddFieldToArea(PivotFieldType.Column,0);
PivotField colField = pivotTable.ColumnFields[0];
colField.NumberFormat = "dd/mm/yyyy";
colField.IsAutoSort = true;
colField.IsAscendSort = true;
เราเพิ่มฟิลด์ที่สองเป็นคอลัมน์และจัดรูปแบบเป็นวันที่ อีกครั้ง เราเปิดใช้งานการเรียงลำดับอัตโนมัติและการเรียงลำดับจากน้อยไปมากเพื่อให้ทุกอย่างเป็นระเบียบ ในที่สุด เราต้องเพิ่มฟิลด์ที่สามลงในพื้นที่ข้อมูลของเรา:
pivotTable.AddFieldToArea(PivotFieldType.Data,2);
ขั้นตอนที่ 6: รีเฟรชและคำนวณตารางสรุปข้อมูล
หลังจากเพิ่มฟิลด์ที่จำเป็นทั้งหมดแล้ว มาตรวจสอบให้แน่ใจว่า Pivot Table ของเราสดใหม่และพร้อมใช้งาน
pivotTable.RefreshData();
pivotTable.CalculateData();
วิธีการเหล่านี้จะรีเฟรชข้อมูลและคำนวณใหม่ โดยให้แน่ใจว่าทุกอย่างเป็นปัจจุบันและแสดงอย่างถูกต้องในตารางสรุปของเรา
ขั้นตอนที่ 7: การเรียงลำดับแบบกำหนดเองตามค่าของฟิลด์แถว
มาเพิ่มความเก๋ไก๋สักหน่อยโดยการเรียงลำดับตารางสรุปข้อมูลตามค่าเฉพาะ เช่น “อาหารทะเล”
index = pivotTables.Add("=Sheet1!A1:C10", "E10", "PivotTable2");
pivotTable = pivotTables[index];
เรากำลังทำซ้ำขั้นตอนโดยสร้างตารางสรุปข้อมูลอีกตารางหนึ่งและตั้งค่าให้คล้ายกับตารางแรก ตอนนี้เราสามารถปรับแต่งเพิ่มเติมได้ดังนี้:
pivotTable.AddFieldToArea(PivotFieldType.Row,1);
rowField = pivotTable.RowFields[0];
rowField.IsAutoSort = true;
rowField.IsAscendSort = true;
ขั้นตอนที่ 8: การปรับแต่งการเรียงลำดับเพิ่มเติม ลองใช้วิธีการเรียงลำดับอื่นตามวันที่ที่ระบุ:
// การเพิ่มตารางสรุปข้อมูลอีกตารางหนึ่งสำหรับการเรียงลำดับตามวันที่
index = pivotTables.Add("=Sheet1!A1:C10", "E18", "PivotTable3");
pivotTable = pivotTables[index];
// ทำซ้ำการตั้งค่าแถวและคอลัมน์ที่คล้ายกับขั้นตอนก่อนหน้า
คุณเพียงแค่ทำซ้ำกระบวนการเดียวกัน โดยสร้างตารางสรุปข้อมูลที่สามที่มีเกณฑ์การเรียงลำดับที่เหมาะกับความต้องการของคุณ
ขั้นตอนที่ 9: บันทึกสมุดงานถึงเวลาบันทึกงานหนักที่เราได้ใส่ลงไป!
wb.Save(outputDir + "out.xlsx");
PdfSaveOptions options = new PdfSaveOptions();
options.OnePagePerSheet = true;
wb.Save(outputDir + "out.pdf", options);
ที่นี่ คุณสามารถบันทึกสมุดงานเป็นไฟล์ Excel และ PDFPdfSaveOptions
ช่วยให้จัดรูปแบบได้ดีขึ้น โดยแน่ใจว่าแต่ละแผ่นงานจะปรากฏในหน้าแยกกันเมื่อแปลง
ขั้นตอนที่ 10: เสร็จสิ้น สรุปทุกอย่างโดยแจ้งให้ผู้ใช้ทราบว่าทุกอย่างเรียบร้อยดี
Console.WriteLine("PivotTableCustomSort executed successfully.");
บทสรุป
ตอนนี้ คุณได้เรียนรู้วิธีใช้พลังของ Aspose.Cells เพื่อสร้างและปรับแต่ง Pivot Table ในแอปพลิเคชัน .NET ของคุณแล้ว ตั้งแต่การตั้งค่าเริ่มต้นไปจนถึงการเรียงลำดับแบบกำหนดเอง แต่ละขั้นตอนจะรวมกันเพื่อมอบประสบการณ์ที่ราบรื่น ไม่ว่าคุณจะต้องนำเสนอข้อมูลยอดขายประจำปีหรือติดตามสถิติสินค้าคงคลัง ทักษะเหล่านี้จะเป็นประโยชน์กับคุณมาก!
คำถามที่พบบ่อย
Pivot Table คืออะไร?
Pivot Table เป็นเครื่องมือประมวลผลข้อมูลใน Excel ที่ช่วยให้คุณสรุปและวิเคราะห์ข้อมูลได้ อีกทั้งยังมีวิธีการที่ยืดหยุ่นในการดึงข้อมูลเชิงลึกได้อย่างง่ายดาย
ฉันจะติดตั้ง Aspose.Cells ได้อย่างไร?
คุณสามารถติดตั้งได้ผ่าน NuGet ใน Visual Studio หรือดาวน์โหลดโดยตรงจากลิงค์ดาวน์โหลด.
มี Aspose.Cells เวอร์ชันทดลองใช้หรือไม่
ใช่! คุณสามารถลองใช้งานฟรีได้โดยเข้าไปที่ลิงค์ทดลองใช้ฟรี.
ฉันสามารถเรียงลำดับฟิลด์หลายฟิลด์ในตารางสรุปข้อมูลได้หรือไม่
แน่นอน! คุณสามารถเพิ่มและเรียงลำดับฟิลด์ต่างๆ ได้ตามความต้องการของคุณ
ฉันสามารถค้นหาการสนับสนุนสำหรับ Aspose.Cells ได้ที่ไหน
ชุมชนมีความกระตือรือร้นมาก และคุณสามารถถามคำถามในฟอรัมของพวกเขาได้ที่นี่.