2014-01-07 103 views
-1

我需要筛选已经过滤的范围。我使用下面的代码,但我认为自动过滤器是不必要的。但是,如果您删除自动筛选器,我仍然会得到一个“运行时间”为438'的 :对象不支持此属性或方法“错误。对筛选范围进行排序

这里是我的代码:

Range(cells(1,1),cells(9,5).select 
selection.autofilter 
activesheet.selection.autofilter.sort.sortfields.clear 
activesheet.selection.autofilter.sort.sortfields. _ 
    add key:=range("a8"), sorton:=xlsortonvalues, order:=xldescending, _ 
    dataoption:=xlsortnormal 

with activesheet.autofilter.sort 
    .header=xlYes 
    .matchcase=false 
    .orienation=xltoptobottom 
    .sortmethod=xlPinYin 
    .apply 
end with 
+0

目前尚不清楚你试图达到什么目标。再加上这段代码甚至不会编译。请描述您的输入和预期结果 - 并发布您的实际代码。 –

回答

0

对不起慢家伙。另外,我应该更清楚地知道我的代码需要什么。我真的只想复制一个有序的单元格范围。我能够使用我录制的宏中的代码。下面是结束了工作代码:

Range(cells(FR,1),cells(LastRow,5)).select 
activeworkbook.worksheets("TR_Tracking").sort.sortfields.clear 
activeworkbook.worksheets("TR_Tracking").sort.sortfields.add key:=range(_ 
    cells(FR,1),cells(lastrow,1)),sorton:=xlsortonvalues,order:=xlascending, dataoption:= _ 
    xlsortnormal 
with activeworkbook.worksheets("TR_Tracking").sort 
    .setrange range(cells((FR-1),1),cells(LastRow,5)) 
    .header=xlYes 
    .matchcase= false 
    .orientation =xltoptobottom 
    .sortmethod=xlpinyin 
    .apply 
end with 

FR =第一行和LASTROW =最后一排,我在的代码单独的行指定的范围内。