我试图将Buy列从最大到最小排序,然后复制并粘贴到另一列,然后我将Sell列从最大到最小排序,然后再次复制并粘贴到另一列。代码不会排序,复制/粘贴,重新排序,然后复制/粘贴;换句话说,它只保留了购买的原始排序。有没有办法对购买进行分类,将它们粘贴到其他地方,然后对销售进行分类并同样复制?我正在考虑尝试do循环,但我不知道为什么我不能以更简单的方式做到这一点。任何见解都会有所帮助谢谢!
' buys
rows("3:3").Select
Selection.AutoFilter
ActiveSheet.AutoFilter.Sort.SortFields.Add Key:=Range("D3" _
), SortOn:=xlSortOnValues, Order:=xlDescending, DataOption:= _
xlSortTextAsNumbers
With ActiveSheet.AutoFilter.Sort
.Header = xlYes
.MatchCase = False
.Orientation = xlTopToBottom
.SortMethod = xlPinYin
.Apply
End With
'copy top ten buys
Range("A5:I14").Select
Selection.Copy
Range("k3").Select
ActiveSheet.PasteSpecial
Application.CutCopyMode = False
' sells
ActiveSheet.AutoFilter.Sort.SortFields.Clear
ActiveSheet.AutoFilter.Sort.SortFields.Add Key:=Range("E3" _
), SortOn:=xlSortOnValues, Order:=xlDescending, DataOption:= _
xlSortTextAsNumbers
With ActiveSheet.AutoFilter.Sort
.Header = xlYes
.MatchCase = False
.Orientation = xlTopToBottom
.SortMethod = xlPinYin
.Apply
End With
Range("A5:I14").Select
Selection.Copy
Range("k14").Select
ActiveSheet.paste
Application.CutCopyMode = False
答案 0 :(得分:1)
由于您只添加了一个新的排序键,因此第二种排序将出现在Buy 和 Sell列上。在第二次搜索之前做Sortfields.clear。