因此,我将此Excel工作表按字母顺序排序,避免了前几列。这是我的代码。它以某种方式可以完美地工作,将可能是20或30个单元格的行排序为数百个行。每行具有不同数量的单元格。但是它对除最后一个单元格以外的所有单元格进行了排序。最后一个单元格是一些随机的单元格,该单元格以“ z”开头,但以“ P”或“ L”开头。
这是我的代码:
Sub SortRows()
Dim lngIndex As Long
Dim strArray(9 To 11000) As String
Dim intCounter As Integer
Dim sht As Worksheet, rng As Range
Set sht = ActiveWorkbook.Worksheets("Page1")
Set rng = sht.Range("J10:UN10")
intCounter = 1
For lngIndex = LBound(strArray) To UBound(strArray)
intCounter = intCounter + 1
strArray(lngIndex) = intCounter
With sht.Sort
.SortFields.Clear
.SortFields.Add Key:=rng, SortOn:=xlSortOnValues, _
Order:=xlAscending, DataOption:=xlSortNormal
.SetRange rng
.Header = xlNo
.MatchCase = False
.Orientation = xlLeftToRight
.SortMethod = xlPinYin
.Apply
End With
Set rng = rng.Offset(1, 0)
Next
End Sub
测试了您的代码,它工作正常。尝试将代码放入新的工作表中并进行测试。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句