Указание предупреждения сортировки при сортировке данных

Возможные сценарии использования

Рассмотрите эти текстовые данные, т.е. {11, 111, 22}. Эти текстовые данные отсортированы, потому что в терминах текста, 111 идет перед 22. Но если вы хотите сортировать эти данные не как текст, а как числа, то результат будет {11, 22, 111}, потому что численно 111 идет после 22. API Aspose.Cells for Node.js via C++ предоставляет свойство {0} для решения этой проблемы. Установите это свойство в true, и ваши текстовые данные будут отсортированы как числовые. Следующий снимок показывает предупреждение о сортировке, которое отображает Microsoft Excel при сортировке текстовых данных, похожих на числовые.

todo:image_alt_text

Образец кода

В следующем образце кода показано использование свойства DataSorter.setSortAsNumber, как объяснено ранее. Пожалуйста, проверьте его образцовый файл Excel и выходной файл Excel для получения дополнительной помощи.

//For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-.NET
const AsposeCells = require("aspose.cells.node");
//Create workbook.
var workbook = new AsposeCells.Workbook("sampleSortAsNumber.xlsx");
//Access first worksheet.
var worksheet = workbook.getWorksheets().get(0);
//Create your cell area.
var ca = AsposeCells.CellArea.createCellArea("A1", "A20");
//Create your sorter.
var sorter = workbook.getDataSorter();
//Find the index, since we want to sort by column A, so we should know the index for sorter.
var idx = AsposeCells.CellsHelper.columnNameToIndex("A");
//Add key in sorter, it will sort in Ascending order.
sorter.addKey(idx, AsposeCells.SortOrder.Ascending);
sorter.setSortAsNumber(true);
//Perform sort.
sorter.sort(worksheet.getCells(), ca);
//Save the output workbook.
workbook.save("outputSortAsNumber.xlsx");