在排序数据时指定排序警告
Contents
[
Hide
]
可能的使用场景
请考虑这段文本数据,即{11, 111, 22}。此文本数据被排序,因为在文本方面,111排在22前面。但是,如果您想将这些数据不作为文本而作为数字进行排序,那么它将变为{11, 22, 111},因为从数字角度看,111在22之后。Aspose.Cells提供了{0}属性来解决这个问题。请将此属性设置为true,您的文本数据将作为数值数据进行排序。以下截图展示了当类似数值数据的文本数据排序时,Microsoft Excel显示的排序警告。
示例代码
下面的示例代码说明了如何使用前面解释的DataSorter.SortAsNumber属性。有关更多帮助,请查看其示例Excel文件和输出Excel文件。
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
// For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-.NET | |
//The path to the documents directory. | |
string dataDir = RunExamples.GetDataDir(System.Reflection.MethodBase.GetCurrentMethod().DeclaringType); | |
//Create workbook. | |
Workbook workbook = new Workbook(dataDir + "sampleSortAsNumber.xlsx"); | |
//Access first worksheet. | |
Worksheet worksheet = workbook.Worksheets[0]; | |
//Create your cell area. | |
CellArea ca = CellArea.CreateCellArea("A1", "A20"); | |
//Create your sorter. | |
DataSorter sorter = workbook.DataSorter; | |
//Find the index, since we want to sort by column A, so we should know the index for sorter. | |
int idx = CellsHelper.ColumnNameToIndex("A"); | |
//Add key in sorter, it will sort in Ascending order. | |
sorter.AddKey(idx, SortOrder.Ascending); | |
sorter.SortAsNumber = true; | |
//Perform sort. | |
sorter.Sort(worksheet.Cells, ca); | |
//Save the output workbook. | |
workbook.Save(dataDir + "outputSortAsNumber.xlsx"); |