Excel VBA按公式排序 - 错误1004

问题描述 投票:0回答:2

我查看了与此主题相关的所有论坛问题。我无法让我的代码工作。

这是代码。请让我知道我需要纠正什么。

Dim strDataRange As String
Dim strKeyRange As String

strDataRange = "B" & strStartRow & ":M" & strLastRow
strKeyRange = "B" & strStartRow & ":B" & strLastRow

Range(strDataRange).Sort Key1:=strKeyRange, Order1:=xlDescending,   Header:=xlNo

strDataRangeB5:M18

strKeyRangeB5:B18

excel vba sorting
2个回答
1
投票

使用:

Range(strDataRange).Sort Key1:=Range(strKeyRange), Order1:=xlDescending, Header:=xlNo

因为Sort方法需要Key1parameter作为“... sort字段,作为范围名称(String)或Range对象”


0
投票

我发现了这个问题。由于VBA代码与我排序的工作表不同,我需要添加工作簿参考;这是“ws”。

这是更正后的代码

 ws.Range(strDataRange).Sort Key1:=ws.Range(strKeyRange), Order1:=xlDescending, Header:=xlNo

感谢你的帮助。

© www.soinside.com 2019 - 2024. All rights reserved.