0
Public r1 As Range, rOb As Range, rDat As Range
Set r1 = Range(db.Range("B3"), db.Range("I" & Rows.Count).End(xlUp)) ' about 1500 rows
Set rOb = Range(db.Range("B3"), db.Range("B" & Rows.Count).End(xlUp))
Set rDat = Range(db.Range("G3"), db.Range("G" & Rows.Count).End(xlUp))
r1.Sort Key1:=rOb
'Or
r1.Sort Key1:=rDat
只有約900行被排序。其餘的都不是。
有時,這種排序根本不起作用。
也試過:如何對超過1500行的範圍進行排序?
r1.Sort Key1:=Range(db.Range("G3"), db.Range("G" & Rows.Count).End(xlUp))
同樣的結果
做你的1500個行在列數據試試我一路下?由於您的排序基於列I的最後一個單元格,可能是缺少數據。試試'msgbox r1.address'來確保你在整個範圍內進行排序。 – nutsch
@nutsch,ThankYou。第一列幾乎是空的。我明白了這一點。也許你應該寫評論作爲答案,這樣纔有可能投票並接受它。 – Alegro