فرز البيانات في العمود بقائمة فرز مخصصة
سيناريوهات الاستخدام المحتملة
يمكنك فرز البيانات في العمود باستخدام قائمة مخصصة. يمكن القيام بذلك باستخدام [DataSorter.AddKey(int key, SortOrder order, String customList)](https://reference.aspose.com/cells/java/com.aspose.cells/datasorter#addKey(int,%20int,%20java.lang.String) الطريقة. ومع ذلك، تعمل هذه الطريقة فقط إذا كانت العناصر في القائمة المخصصة لا تحتوي على فواصل بينها. إذا كانت تحتوي على فواصل مثل “USA, US”, “China, CN” وما إلى ذلك، فيجب عليك استخدام [DataSorter.AddKey(int key, SortOrder order, String customList)](https://reference.aspose.com/cells/java/com.aspose.cells/datasorter#addKey(int,%20int,%20java.lang.String) الطريقة. هنا، الباراميتر الأخير ليس نصا ولكن مصفوفة من السلاسل.
فرز البيانات في العمود بقائمة فرز مخصصة
الكود المثالي التالي يوضح كيفية استخدام الطريقة DataSorter.AddKey(int key, SortOrder order, String[] customList) لفرز البيانات بقائمة فرز مخصصة. يرجى الاطلاع على ملف الإكسل عينة المستخدم في هذا الكود وملف الإكسل الناتج المولد منه. الشاشة التالية تظهر تأثير الكود على ملف الإكسل عينة عند التنفيذ.
الكود المثالي
// 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"); |