2014-11-03 288 views
0

我試圖按vba中列h中的值遞減排序。在excel vba中按列排序

我使用的代碼如下;

With .Range("a8:h" & Rowindex - 1) 
.Sort Key1:=Range(.Cells(9, 8), .Cells(Rowindex, 8)), Order1:=xlDescending, Header:=xlNo 
End With 

Rowindex是我的行數。

但是,當我運行這個,我得到以下錯誤;

「Method對象的 '範圍'」_Global失敗「

+3

您的意思是'ws.Range(ws.Cells(9,8),ws.Cells(rowIndex位置,8))'?哪裏'ws'是工作表對象? – 2014-11-03 13:26:28

+2

你在另一個With塊嗎?爲什麼在'With'附近的'Range()'之前有'。* *'? – 2014-11-03 13:26:31

+0

是的,它是在另一個塊。帶塊的是「With worksheet」 – Chrislaar123 2014-11-03 13:33:27

回答

0
.Sort Key1:=.Range("a8:h" & Rowindex - 1), Order1:=xlDescending, Header:=xlNo