[]
ISortFieldValueSortField使用此接口可描述如何按单元格值对区域排序。值排序字段可以按升序或降序排序,也可以按通过 setCustomValues(String) 配置的自定义值列表排序。它还可通过 getDataOption() 和 setDataOption(SortDataOption) 获取或设置排序字段的数据选项。
worksheet.getRange("A1:B4").setValue(new Object[][] {
{"Name", "Score"},
{"A", 80},
{"B", 95},
{"C", 88}
});
IValueSortField sortField = new ValueSortField(worksheet.getRange("B2:B4"), SortOrder.Descending);
sortField.setDataOption(SortDataOption.Normal);
worksheet.getRange("A2:B4").sort(SortOrientation.Columns, false, sortField);
3,2,5,1。getOrder()voidsetCustomValues(String value) 3,2,5,1。voidsetDataOption(SortDataOption value) voidgetKey, getPriority, getSortOn, setPriority数据选项用于指定排序期间如何处理文本值,例如按普通文本排序,或将文本作为数字排序。使用 setDataOption(SortDataOption) 更改此设置。
IValueSortField sortField = new ValueSortField(worksheet.getRange("A2:A5"), SortOrder.Ascending);
sortField.setDataOption(SortDataOption.TextAsNumbers);
SortDataOption dataOption = sortField.getDataOption();
使用此方法可控制排序期间如何处理文本值。例如,SortDataOption.TextAsNumbers 会将文本值作为数值数据排序。
IValueSortField sortField = new ValueSortField(worksheet.getRange("A2:A5"), SortOrder.Ascending);
sortField.setDataOption(SortDataOption.TextAsNumbers);
value - 要应用于排序字段的数据选项。返回当前为此值排序字段配置的 SortOrder。使用 getCustomValues() 检查该字段是否配置了自定义值列表。
worksheet.getRange("A1:A4").setValue(new Object[][] {{3}, {1}, {4}, {2}});
IValueSortField sortField = new ValueSortField(worksheet.getRange("A1:A2"), SortOrder.Descending);
SortOrder order = sortField.getOrder();
IValueSortField sortField = new ValueSortField(worksheet.getRange("A1:A4"), SortOrder.Ascending);
sortField.setOrder(SortOrder.Descending);
SortOrder order = sortField.getOrder();
value - 排序顺序。3,2,5,1。如果此属性不为空字符串,则排序顺序由自定义值列表决定。
worksheet.getRange("A1:A5").setValue(new Object[][] {
{"Value"},
{3},
{2},
{5},
{1}
});
IValueSortField sortField = new ValueSortField(worksheet.getRange("A2:A5"), "3,2,5,1");
String customValues = sortField.getCustomValues();
3,2,5,1。如果此属性不为空字符串,则排序顺序由自定义值列表决定。
worksheet.getRange("A1:A5").setValue(new Object[][] {
{"Value"},
{3},
{2},
{5},
{1}
});
IValueSortField sortField = new ValueSortField(worksheet.getRange("A2:A5"), "3,2,5,1");
sortField.setCustomValues("5,3,2,1");
value - 自定义值列表字符串。如果未指定自定义排序值,可将其设置为空字符串。