我研究了几个站点两天,并提出了几个接近我需要但不准确的宏。如果我不在正确的地方,有人会指导我去我需要去的地方吗?
我希望有人可以调整我所拥有的东西,这样它就可以工作了。下面是我正在使用的 Excel 行的副本。
MT MD BB AA CC
MT MD AK
MT MD LX A2
MT MD LA SO VL AH PH
A7 LW A1
SC
MT MD GL A1
MT MD
A7 A1 A2
MT MD A1 AH
MT MD A4 AD A7 AK A1 AH PH A2 A7 AH AJ PH
. 我需要使用自定义列表对每一行进行排序:
MT MD BU ED TI AS CI MP FF NF A1 A2 A7 LX GL CR BA WS
任何不在列表中但出现在电子表格中的内容都将落在列表的末尾。下面是两个接近但不完全的宏。(我已经对原件进行了修改)
Sub test()
ActiveWorkbook.Worksheets("Sheet1").Range("3:100").Sort _
Key1:=ActiveWorkbook.Worksheets("Sheet1").Range("3:100").Row(2), _
Header:=xlYes, _
Orientation:=xlSortRows, _
MatchCase:=False, _
SortMethod:=xlPinYin
End Sub
Sub Macro5()
Rows("3:30").Select
ActiveWorkbook.Worksheets("Sheet1").Sort.SortFields.Clear
ActiveWorkbook.Worksheets("Sheet1").Sort.SortFields.Add Key:=Rows("2:2"), _
SortOn:=xlSortOnValues, Order:=xlAscending, CustomOrder:= _
"MT,BU,MD,ED,TI,AS,CI,MP,FF,NF,A1,A2,A7,LX,CR,BA,GL,WS", DataOption:= _
xlSortNormal
With ActiveWorkbook.Worksheets("Sheet1").Sort
.SetRange Rows("3:30")
.Header = xlGuess
.MatchCase = False
.Orientation = xlLeftToRight
.SortMethod = xlPinYin
.Apply
End With
End Sub
有什么想法吗?