我有一个Excel工作表,并希望按字母顺序对其所有值进行排序。例如,让我说我有:
Col 1 | Col 2
------+-------
z | 26
------+-------
a | 1
------+-------
我想
Col 1 | Col 2
------+-------
a | 1
------+-------
z | 26
------+-------
而不是
Col 1 | Col 2
------+-------
a | 26
------+-------
z | 1
------+-------
我知道我可以使用
对第一列进行排序Target.EntireColumn.Sort Key1:=Target, Order1:=xlAscending, Header:=xlGuess,
OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom
但是像这样对第一列进行排序会产生我不想要的结果。
任何人都有任何想法?
答案 0 :(得分:1)
Columns("D:D").Select
ActiveWorkbook.Worksheets("Sheet1").Sort.SortFields.Clear
ActiveWorkbook.Worksheets("Sheet1").Sort.SortFields.Add Key:=Range("D1"), _
SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:=xlSortNormal
With ActiveWorkbook.Worksheets("Sheet1").Sort
.SetRange Range("A1:D6")
.Header = xlNo
.MatchCase = False
.Orientation = xlTopToBottom
.SortMethod = xlPinYin
.Apply
End With