فرز البيانات في العمود بقائمة فرز مخصصة

سيناريوهات الاستخدام المحتملة

يمكنك فرز البيانات في العمود باستخدام قائمة مخصصة. يمكن ذلك باستخدام DataSorter.AddKey(int key, SortOrder order, String customList) . ومع ذلك، تعمل هذه الطريقة فقط إذا لم تحتوي العناصر في القائمة المخصصة على فواصل داخلها. إذا كانت تحتوي على فواصل مثل “USA, US”، “China, CN” إلخ، يجب عليك استخدام DataSorter.AddKey(int key, SortOrder order, String customList) . هنا، المعامل الأخير ليس String بل مصفوفة من Strings.

فرز البيانات في العمود بقائمة فرز مخصصة

الكود المثالي التالي يوضح كيفية استخدام الطريقة DataSorter.AddKey(int key, SortOrder order, String[] customList) لفرز البيانات بقائمة فرز مخصصة. يرجى الاطلاع على ملف الإكسل عينة المستخدم في هذا الكود وملف الإكسل الناتج المولد منه. الشاشة التالية تظهر تأثير الكود على ملف الإكسل عينة عند التنفيذ.

todo:image_alt_text

الكود المثالي

// For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-Java
//Load the source Excel file
Workbook wb = new Workbook(srcDir + "sampleSortData_CustomSortList.xlsx");
//Access first worksheet
Worksheet ws = wb.getWorksheets().get(0);
//Specify cell area - sort from A1 to A40
CellArea ca = CellArea.createCellArea("A1", "A40");
//Create Custom Sort list
String[] customSortList = new String[] { "USA,US", "Brazil,BR", "China,CN", "Russia,RU", "Canada,CA" };
//Add Key for Column A, Sort it in Ascending Order with Custom Sort List
wb.getDataSorter().addKey(0, SortOrder.ASCENDING, customSortList);
wb.getDataSorter().sort(ws.getCells(), ca);
//Save the output Excel file
wb.save(outDir + "outputSortData_CustomSortList.xlsx");