Range.Sort 方法 (Excel)
对值区域进行排序。
表达式。排序 (Key1、 Order1、 Key2、 Type、 Order2、 Key3、 Order3、 Header、 OrderCustom、 MatchCase、 Orientation、 SortMethod、 DataOption1、 DataOption2、 DataOption3)
expression 一个表示 Range 对象的变量。
名称 | 必需/可选 | 数据类型 | 说明 |
---|---|---|---|
Key1 | 可选 | Variant | 指定第一个排序字段,作为区域名称 (String) 或 Range 对象;确定要排序的值。 |
Order1 | 可选 | XlSortOrder | 确定 Key1 中指定值的排序顺序。 |
Key2 | 可选 | Variant | 第二个排序字段;对数据透视表进行排序时无法使用。 |
Type | 可选 | Variant | 指定要在数据透视表中对哪种类型的元素进行排序。 指定 xLSortLabels 以按数据透视表区域的行/列标签区域中的扩展范围所针对的标签进行排序;当 Key1 使用 R1 表示法另外以值或子/总计区域中的单元格为目标时,指定 xLSortValues。 |
Order2 | 可选 | XlSortOrder | 确定 Key2 中指定的值的排序顺序。 |
Key3 | 可选 | Variant | 第三个排序字段;对数据透视表进行排序时无法使用。 |
Order3 | 可选 | XlSortOrder | 确定 Key3 中指定值的排序顺序。 |
Header | 可选 | XlYesNoGuess | 指定第一行是否包含标题信息。 默认值为 xlNo。如果希望 Excel 确定标题,指定 xlGuess。 |
OrderCustom | 可选 | Variant | 指定在自定义排序次序列表中的基于一的整数偏移。 |
MatchCase | 可选 | Variant | 设置为 True 可执行区分大小写的排序; 设置为 False 可执行不区分大小写的排序;不能与数据透视表一起使用。 |
Orientation | 可选 | XlSortOrientation | 指定是应按行(默认)还是按列进行排序。 将 xlSortColumns 值设置为 1 以按列排序。 将 xlSortRows 值设置为 2 以按行排序, (这是默认值) 。 |
SortMethod | 可选 | XlSortMethod | 指定排序方法。 |
DataOption1 | 可选 | XlSortDataOption | 指定如何在 Key1 中指定的范围内对文本进行排序;不适用于数据透视表排序。 |
DataOption2 | 可选 | XlSortDataOption | 指定如何在 Key2 中指定的范围内对文本进行排序;不适用于数据透视表排序。 |
DataOption3 | 可选 | XlSortDataOption | 指定如何在 Key3 中指定的范围内对文本进行排序;不适用于数据透视表排序。 |
Variant
此示例使用 ColorIndex 属性获取 A 列中单元格颜色的值,然后使用该值按颜色对区域进行排序。
Sub ColorSort()
'Set up your variables and turn off screen updating.
Dim iCounter As Integer
Application.ScreenUpdating = False
'For each cell in column A, go through and place the color index value of the cell in column C.
For iCounter = 2 To 55
Cells(iCounter, 3) = _
Cells(iCounter, 1).Interior.ColorIndex
Next iCounter
'Sort the rows based on the data in column C
Range("C1") = "Index"
Columns("A:C").Sort key1:=Range("C2"), _
order1:=xlAscending, header:=xlYes
'Clear out the temporary sorting value in column C, and turn screen updating back on.
Columns(3).ClearContents
Application.ScreenUpdating = True
End Sub
有关于 Office VBA 或本文档的疑问或反馈? 请参阅 Office VBA 支持和反馈,获取有关如何接收支持和提供反馈的指南。