การกรองข้อมูลในสเปรดชีต Excel เป็นคุณสมบัติที่สำคัญ ช่วยให้คุณสามารถซ่อนข้อมูลที่ไม่เกี่ยวข้องและแสดงเฉพาะข้อมูลที่ตรงตามเกณฑ์ที่กำหนด อาจมีสถานการณ์ที่การกรองข้อมูลสามารถพิสูจน์ได้ว่ามีประโยชน์ ตัวอย่างเช่น องค์กรอาจต้องการกรองผลิตภัณฑ์ที่มีประสิทธิภาพต่ำออกจากรายงานการขายเพื่อวิเคราะห์และปรับปรุงกลยุทธ์การขายของตน ในบทความนี้ คุณจะได้เรียนรู้วิธีเพิ่มหรือลบตัวกรองอัตโนมัติในไฟล์ Excel โดยใช้ C++
- C++ API สำหรับเพิ่มและลบตัวกรองอัตโนมัติในไฟล์ Excel
- ใช้ตัวกรองอัตโนมัติในไฟล์ Excel โดยใช้ C ++
- เพิ่มตัวกรองวันที่อัตโนมัติในไฟล์ Excel โดยใช้ C++
- เพิ่มตัวกรองอัตโนมัติวันที่แบบไดนามิกในไฟล์ Excel โดยใช้ C ++
- ใช้ Custom AutoFilter ในไฟล์ Excel โดยใช้ C++
- ลบตัวกรองอัตโนมัติออกจากไฟล์ Excel
C ++ API เพื่อเพิ่มและลบตัวกรองอัตโนมัติในไฟล์ Excel
เราจะใช้ Aspose.Cells for C++ API สำหรับเพิ่มและลบตัวกรองอัตโนมัติในไฟล์ Excel เป็นไลบรารี C++ แบบเนทีฟที่ให้คุณสร้าง อ่าน และแก้ไขไฟล์ Excel โดยไม่ต้องติดตั้ง Microsoft Excel คุณสามารถติดตั้ง API ผ่าน NuGet หรือดาวน์โหลดโดยตรงจากส่วน ดาวน์โหลด
PM> Install-Package Aspose.Cells.Cpp
ใช้ตัวกรองอัตโนมัติในไฟล์ Excel โดยใช้ C ++
คุณสามารถใช้ตัวกรองอัตโนมัติกับช่วงของเซลล์ ตัวกรองอัตโนมัติช่วยให้คุณเรียงลำดับและกรองค่าในช่วงเซลล์ที่กำหนด ต่อไปนี้เป็นขั้นตอนในการเพิ่มตัวกรองอัตโนมัติในไฟล์ Excel
- ขั้นแรก ให้โหลดไฟล์ Excel โดยใช้คลาส IWorkbook
- ดึงแผ่นงานที่คุณต้องการใช้ตัวกรองอัตโนมัติโดยใช้เมธอด IWorkbook->GetIWorksheets()->GetObjectByIndex (Aspose::Cells::Systems::Int32)
- ใช้ตัวกรองอัตโนมัติโดยใช้ IWorksheet->GetIAutoFilter()->SetRange(intrusiveptrAspose::Cells::Systems::String ค่า) วิธีการ
- สุดท้าย ให้บันทึกไฟล์ Excel โดยใช้ IWorkbook->Save (intrusiveptrAspose::Cells::Systems::String ชื่อไฟล์) วิธีการ
โค้ดตัวอย่างต่อไปนี้แสดงวิธีใช้ตัวกรองอัตโนมัติกับช่วงของเซลล์ในไฟล์ Excel โดยใช้ C++
// เส้นทางไดเร็กทอรีต้นทาง
StringPtr srcDir = new String("SourceDirectory\\");
// เส้นทางไดเร็กทอรีเอาต์พุต
StringPtr outDir = new String("OutputDirectory\\");
// โหลดไฟล์ Excel ต้นทาง
intrusive_ptr<IWorkbook> workbook = Factory::CreateIWorkbook(srcDir->StringAppend(new String("Book3.xlsx")));
// เข้าถึงแผ่นงานแรกในไฟล์ Excel
intrusive_ptr<IWorksheet> worksheet = workbook->GetIWorksheets()->GetObjectByIndex(0);
// การสร้างตัวกรองอัตโนมัติโดยกำหนดช่วงเซลล์
worksheet->GetIAutoFilter()->SetRange(new String("A1:B1"));
// บันทึกไฟล์ Excel
workbook->Save(outDir->StringAppend(new String("AutoFilter_out.xlsx")));
เพิ่มตัวกรองวันที่อัตโนมัติในไฟล์ Excel โดยใช้ C++
ไฟล์ Excel อาจมีข้อมูลตามวันที่ คุณอาจพบว่าตัวเองอยู่ในสถานการณ์ที่ต้องกรองและวิเคราะห์ข้อมูลตามวันที่ต่างๆ ดังนั้น ตัวกรองวันที่จะเป็นประโยชน์ในสถานการณ์ดังกล่าว ต่อไปนี้เป็นขั้นตอนในการเพิ่มตัวกรองวันที่อัตโนมัติในไฟล์ Excel
- ขั้นแรก ให้โหลดไฟล์ Excel โดยใช้คลาส IWorkbook
- ดึงแผ่นงานที่คุณต้องการใช้ตัวกรองอัตโนมัติโดยใช้เมธอด IWorkbook->GetIWorksheets()->GetObjectByIndex (Aspose::Cells::Systems::Int32)
- ใช้ตัวกรองวันที่อัตโนมัติโดยใช้ IWorksheet->GetIAutoFilter()->AddDateFilter(Aspose::Cells::Systems::Int32 fieldIndex, Aspose::Cells::DateTimeGroupingType dateTimeGroupingType, Aspose::Cells::Systems::Int32 year, Aspose ::เซลล์::ระบบ::Int32 เดือน, Aspose::Cells::Systems::Int32 วัน, Aspose::Cells::Systems::Int32 ชั่วโมง, Aspose::Cells::Systems::Int32 นาที, Aspose:: Cells::Systems::Int32 วินาที) วิธีการ
- หากต้องการอัปเดตเวิร์กชีต ให้ใช้เมธอด [IWorksheet->GetIAutoFilter()->รีเฟรช()][11
- สุดท้าย ให้บันทึกไฟล์ Excel โดยใช้ IWorkbook->Save (intrusiveptrAspose::Cells::Systems::String ชื่อไฟล์) วิธีการ
โค้ดตัวอย่างต่อไปนี้สาธิตวิธีเพิ่มวันที่ตัวกรองอัตโนมัติในไฟล์ Excel โดยใช้ C++
// เส้นทางไดเร็กทอรีต้นทาง
StringPtr srcDir = new String("SourceDirectory\\");
// เส้นทางไดเร็กทอรีเอาต์พุต
StringPtr outDir = new String("OutputDirectory\\");
// โหลดไฟล์ Excel ต้นทาง
intrusive_ptr<IWorkbook> workbook = Factory::CreateIWorkbook(srcDir->StringAppend(new String("Book4.xlsx")));
// เข้าถึงแผ่นงานแรกในไฟล์ Excel
intrusive_ptr<IWorksheet> worksheet = workbook->GetIWorksheets()->GetObjectByIndex(0);
// เรียกใช้ฟังก์ชัน AddDateFilter เพื่อใช้ตัวกรอง
worksheet->GetIAutoFilter()->AddDateFilter(0, DateTimeGroupingType_Month, 2018, 1, 1, 0, 0, 0);
// เรียกใช้ฟังก์ชันรีเฟรชเพื่ออัปเดตเวิร์กชีต
worksheet->GetIAutoFilter()->Refresh();
// บันทึกไฟล์ Excel
workbook->Save(outDir->StringAppend(new String("DateFilter_out.xlsx")));
เพิ่มตัวกรองอัตโนมัติวันที่แบบไดนามิกในไฟล์ Excel โดยใช้ C ++
อาจมีบางกรณีที่คุณต้องการตัวกรองวันที่ทั่วไปมากขึ้น เช่น เดือนโดยไม่คำนึงถึงปีหรือเดือนก่อนเดือนปัจจุบัน สำหรับสถานการณ์เช่นนี้ คุณสามารถใช้ตัวกรองอัตโนมัติแบบไดนามิกเพื่อกรองข้อมูลได้ ต่อไปนี้เป็นขั้นตอนในการกรองข้อมูลโดยใช้ตัวกรองอัตโนมัติวันที่แบบไดนามิก
- ขั้นแรก ให้โหลดไฟล์ Excel โดยใช้คลาส IWorkbook
- ดึงแผ่นงานที่คุณต้องการใช้ตัวกรองอัตโนมัติโดยใช้เมธอด IWorkbook->GetIWorksheets()->GetObjectByIndex (Aspose::Cells::Systems::Int32)
- ใช้ DynamicFilter โดยใช้เมธอด IWorksheet->GetIAutoFilter()->DynamicFilter (Aspose::Cells::Systems::Int32 fieldIndex, Aspose::Cells::DynamicFilterType dynamicFilterType)
- หากต้องการอัปเดตเวิร์กชีต ให้ใช้เมธอด IWorksheet->GetIAutoFilter()->รีเฟรช()
- สุดท้าย ให้บันทึกไฟล์ Excel โดยใช้ IWorkbook->Save (intrusiveptrAspose::Cells::Systems::String ชื่อไฟล์) วิธีการ
โค้ดตัวอย่างต่อไปนี้สาธิตวิธีเพิ่มตัวกรองอัตโนมัติวันที่แบบไดนามิกในไฟล์ Excel โดยใช้ C++
// เส้นทางไดเร็กทอรีต้นทาง
StringPtr srcDir = new String("SourceDirectory\\");
// เส้นทางไดเร็กทอรีเอาต์พุต
StringPtr outDir = new String("OutputDirectory\\");
// โหลดไฟล์ Excel ต้นทาง
intrusive_ptr<IWorkbook> workbook = Factory::CreateIWorkbook(srcDir->StringAppend(new String("Book4.xlsx")));
// เข้าถึงแผ่นงานแรกในไฟล์ Excel
intrusive_ptr<IWorksheet> worksheet = workbook->GetIWorksheets()->GetObjectByIndex(0);
// เรียกใช้ฟังก์ชัน DynamicFilter เพื่อใช้ตัวกรอง
worksheet->GetIAutoFilter()->DynamicFilter(0, DynamicFilterType_Februray);
// เรียกใช้ฟังก์ชันรีเฟรชเพื่ออัปเดตเวิร์กชีต
worksheet->GetIAutoFilter()->Refresh();
// บันทึกไฟล์ Excel
workbook->Save(outDir->StringAppend(new String("DynamicDateAutoFilter_out.xlsx")));
ใช้ Custom AutoFilter ในไฟล์ Excel โดยใช้ C++
ในกรณีที่คุณต้องการใช้ AutoFilter แบบกำหนดเอง Aspose.Cells for C++ API ครอบคลุมถึงคุณแล้ว เมื่อใช้ API คุณสามารถใช้ตัวกรองอัตโนมัติแบบกำหนดเองในไฟล์ Excel ตามความต้องการเฉพาะของคุณได้ ต่อไปนี้เป็นขั้นตอนในการเพิ่มตัวกรองอัตโนมัติแบบกำหนดเองในไฟล์ Excel
- ขั้นแรก ให้โหลดไฟล์ Excel โดยใช้คลาส IWorkbook
- ดึงแผ่นงานที่คุณต้องการใช้ตัวกรองอัตโนมัติโดยใช้เมธอด IWorkbook->GetIWorksheets()->GetObjectByIndex (Aspose::Cells::Systems::Int32)
- ใช้ Custom AutoFilter โดยใช้ IWorksheet->GetIAutoFilter()->Custom(Aspose::Cells::Systems::Int32 fieldIndex, Aspose::Cells::FilterOperatorType operationType1, intrusiveptrAspose::Cells::Systems::Object เกณฑ์1) วิธีการ
- เรียกใช้เมธอด IWorksheet->GetIAutoFilter()->Refresh() เพื่ออัปเดตเวิร์กชีต
- สุดท้าย ให้บันทึกไฟล์ Excel โดยใช้ IWorkbook->Save (intrusiveptrAspose::Cells::Systems::String ชื่อไฟล์) วิธี
โค้ดตัวอย่างต่อไปนี้แสดงวิธีเพิ่มตัวกรองอัตโนมัติแบบกำหนดเองในไฟล์ Excel โดยใช้ C++
// เส้นทางไดเร็กทอรีต้นทาง
StringPtr srcDir = new String("SourceDirectory\\");
// เส้นทางไดเร็กทอรีเอาต์พุต
StringPtr outDir = new String("OutputDirectory\\");
// โหลดไฟล์ Excel ต้นทาง
intrusive_ptr<IWorkbook> workbook = Factory::CreateIWorkbook(srcDir->StringAppend(new String("sampleCountryNames.xlsx")));
// เข้าถึงแผ่นงานแรกในไฟล์ Excel
intrusive_ptr<IWorksheet> worksheet = workbook->GetIWorksheets()->GetObjectByIndex(0);
// เรียกใช้ฟังก์ชันกำหนดเองเพื่อใช้ตัวกรอง
worksheet->GetIAutoFilter()->Custom(0, FilterOperatorType_Equal, new String("Brazil"));
// เรียกใช้ฟังก์ชันรีเฟรชเพื่ออัปเดตเวิร์กชีต
worksheet->GetIAutoFilter()->Refresh();
// บันทึกไฟล์ Excel
workbook->Save(outDir->StringAppend(new String("CustomFilter_out.xlsx")));
ลบตัวกรองอัตโนมัติออกจากไฟล์ Excel
ในส่วนก่อนหน้านี้ คุณได้เรียนรู้วิธีเพิ่มตัวกรองอัตโนมัติต่างๆ ในไฟล์ Excel นอกจากการเพิ่มตัวกรองอัตโนมัติแล้ว คุณยังสามารถลบออกได้โดยใช้ Aspose.Cells for C++ API ต่อไปนี้เป็นขั้นตอนในการลบตัวกรองอัตโนมัติออกจากไฟล์ Excel
- ขั้นแรก ให้โหลดไฟล์ Excel โดยใช้คลาส IWorkbook
- ดึงแผ่นงานจากตำแหน่งที่คุณต้องการลบตัวกรองอัตโนมัติโดยใช้เมธอด IWorkbook->GetIWorksheets()->GetObjectByIndex (Aspose::Cells::Systems::Int32)
- ลบตัวกรองอัตโนมัติโดยใช้เมธอด IWorksheet->RemoveAutoFilter()
- สุดท้าย ให้บันทึกไฟล์ Excel โดยใช้ IWorkbook->Save (intrusiveptrAspose::Cells::Systems::String ชื่อไฟล์) วิธีการ
โค้ดตัวอย่างต่อไปนี้แสดงวิธีการลบตัวกรองอัตโนมัติออกจากไฟล์ Excel โดยใช้ C++
// เส้นทางไดเร็กทอรีต้นทาง
StringPtr srcDir = new String("SourceDirectory\\");
// เส้นทางไดเร็กทอรีเอาต์พุต
StringPtr outDir = new String("OutputDirectory\\");
// โหลดไฟล์ Excel ต้นทาง
intrusive_ptr<IWorkbook> workbook = Factory::CreateIWorkbook(srcDir->StringAppend(new String("SampleAutoFilter.xlsx")));
// เข้าถึงแผ่นงานแรกในไฟล์ Excel
intrusive_ptr<IWorksheet> worksheet = workbook->GetIWorksheets()->GetObjectByIndex(0);
// ลบตัวกรองอัตโนมัติ
worksheet->RemoveAutoFilter();
// บันทึกไฟล์ Excel
workbook->Save(outDir->StringAppend(new String("RemoveAutoFilter_out.xlsx")));
รับใบอนุญาตฟรี
คุณสามารถลองใช้ API ได้โดยไม่มีข้อจำกัดในการประเมินโดยขอ ใบอนุญาตชั่วคราวฟรี
บทสรุป
ในบทความนี้ คุณได้เรียนรู้วิธีเพิ่มและลบตัวกรองอัตโนมัติออกจากไฟล์ Excel โดยใช้ C++ คุณได้เรียนรู้วิธีเพิ่มค่าเริ่มต้น วันที่ วันที่ไดนามิก และตัวกรองอัตโนมัติแบบกำหนดเอง คุณได้เห็นวิธีลบตัวกรองอัตโนมัติโดยใช้ Aspose.Cells สำหรับ C ++ API API มีคุณสมบัติเพิ่มเติมมากมายสำหรับการทำงานกับไฟล์ Excel คุณสามารถสำรวจ API โดยละเอียดได้โดยไปที่ เอกสารอย่างเป็นทางการ ในกรณีที่มีคำถามใดๆ โปรดติดต่อเราได้ที่ ฟอรัมสนับสนุนฟรี