【发布时间】:2018-02-20 16:30:18
【问题描述】:
好的,所以我正在尝试通过参考表对我的分类表进行自定义排序,这里是参考表的一小部分
现在,每当我对分类表进行排序时,它就会变成这样
如您所见,它只排序到一定数量的行(C&J Global Enterprises),其余按字母顺序排序(这不是我想要的)
这是我的 VBA 代码
Private Sub WorkSheet_Activate()
Dim MainSheet As Worksheet, RefSheet As Worksheet
Set MainSheet = Worksheets("Classifieds Client Table")
Set RefSheet = Worksheets("RefTable")
Dim RangeOne As Range, RangeTwo As Range
Set RangeOne = MainSheet.Range("A2:A150")
Set RangeTwo = RefSheet.Range("A1:A137")
Dim MainRange As Range
Set MainRange = MainSheet.Range("A2:H150")
Application.AddCustomList ListArray:=RangeTwo
MainSheet.Sort.SortFields.Clear
MainRange.Sort Key1:=MainRange, Header:=xlNo, _
OrderCustom:=Application.CustomListCount + 1, MatchCase:=False, _
Orientation:=xlTopToBottom, DataOption1:=xlSortNormal
Application.DeleteCustomList Application.CustomListCount
提前致谢!
【问题讨论】:
-
如果 C&J Global Enterprises 确实列在 RangeTwo 中,请尝试删除 & 符号 - 只是猜测,基于如果代码没有错误,数据肯定有错误的结论。
-
如果您的示例代码不包含与问题无关的部分,会更容易为您提供帮助。 (见minimal reproducible example。)
-
@ashleedawg,抱歉,我认为这会有所帮助——Variatus,我现在就试试——TimWilliams 会检查它
-
不,我们只是对损坏的部分感兴趣(当然还有相关数据!)