我想根據第二行(新舊)列的值(Date)對工作表進行排序,從第二行開始直到結束。
我寫了代碼,但總是出現錯誤:1004,排序引用無效。有人碰巧知道解決方案嗎?
謝謝。
Workbooks("Task2.xlsm").Worksheets("Data").Column("A:CA").Sort key1:=Range("H2"), order1:=xlDescending, Header:=xlYes
自第二行開始按列值排序工作表
0
A
回答
0
我錄製一個宏,我找到了答案(它可以簡化):
Workbooks("Task2.xlsm").Worksheets("Data").AutoFilter.Sort.SortFields.Clear
Workbooks("Task2.xlsm").Worksheets("Data").AutoFilter.Sort.SortFields.Add Key:=Range("H1"), SortOn:=xlSortOnValues, Order:=xlDescending, DataOption:=xlSortTextAsNumbers
With Workbooks("Task2.xlsm").Worksheets("Data").AutoFilter.Sort
.Header = xlYes
.MatchCase = False
.Orientation = xlTopToBottom
.SortMethod = xlPinYin
.Apply
End With
0
做你想做key1:=Range("H:H")?
我假設H列是你的鑰匙,而不是單個細胞H2。
0
變化Column
到Columns
(錯字中發佈您的代碼,我認爲)
然後你就會有一個運行時錯誤,每當Worksheets("Data")
是不是當前活動工作表。最好的辦法是完全避免這種類型的錯誤,並用的Range("H2")
前whcih使得指明確在指定的紙張合格範圍
With Workbooks("Task2.xlsm").Worksheets("Data")
.Column("A:CA").Sort key1:=.Range("H2"), order1:=xlDescending, Header:=xlYes
End with
^^^^
通知的.
(點)總是工作with
條款。沒有這一點,你正在使用不合格的範圍,它指的是當前活動的工作表。
+0
謝謝A.S.H.我也找到了答案。 – Francis
相關問題
- 1. MySQL按第一列排序,按第二列排序
- 2. 排序元組列表的第二項不工作在python
- 3. Mysql按第一列然後第二個按順序排列
- 4. 排序原始表按降序排列
- 5. SQL:按第一個關係對第二個表進行排序
- 6. 按元素列表的第二個元素對列表進行排序
- 7. Javascript:按照第二列desc排序二維數組,然後按第一列asc
- 8. Python - 閱讀第二排開始
- 9. 按第一列排序第二列使用tablesorter
- 10. 從第5行開始按字母排序使用VBA
- 11. 排序由第二列
- 12. 排序下拉列表按值排列
- 13. 按第二個值對字典進行排序
- 14. 基於第二列對2D列表進行排序
- 15. 按方案中對的第二個元素對排序列表
- 16. dgrid自定義排序與第二排序列
- 17. 按行排序二維陣列
- 18. 行值是第二表中的列名,需要從第二表
- 19. Mysql:按第二個表中的匹配行數排序結果
- 20. 第二個名字排序列表,但如果第二個名字是相同的,按名排序
- 21. 如何排序多列列表視圖(按第二列)從自定義基礎適配器獲取值
- 22. 按第二個值對二維數組排序
- 23. 排序第三列離開第一列和第二列完整(在Linux中)
- 24. 對一列中的第二個值進行排序rich:dataTable
- 25. 按自定義列表排序對DataTable進行排序
- 26. 在ClosedXML中,如何按列對工作表進行排序?
- 27. 按第一個元素對元素列表排序,但如果按第二個元素排序則等於
- 28. 當找到第二列值時,根據列值排除行
- 29. Bash shell - 按第二個字母對單詞列表進行排序?
- 30. 如何在保留第一列的排序的同時按第二列進行排序?
謝謝桑傑! – Francis