通过VBA对行中的单词进行sorting

目前我的代码只sorting包含范围内的所有“A”(E20:I20直到最后一行)的行,但是如果任何一行在范围(E20:I20到最后一行)中包含“A”,我想在顶部sorting“A”。 我坚持下去。 任何帮助是受欢迎的。

Sub SortA() Range("A19").Select Range(Selection, Selection.End(xlToRight)).Select Range(Selection, Selection.End(xlDown)).Select Range(Selection, Selection.End(xlDown)).Select ActiveWorkbook.Worksheets("Phop").Sort.SortFields.Clear ActiveWorkbook.Worksheets("Phop").Sort.SortFields.Add Key:=Range("E20:E" & Range("E" & Rows.Count).End(xlUp).Row), SortOn:=xlSortOnValues, Order:=xlAscending, CustomOrder:="A", DataOption:=xlSortNormal ActiveWorkbook.Worksheets("Phop").Sort.SortFields.Add Key:=Range("F20:F" & Range("F" & Rows.Count).End(xlUp).Row), SortOn:=xlSortOnValues, Order:=xlAscending, CustomOrder:="A", DataOption:=xlSortNormal ActiveWorkbook.Worksheets("Phop").Sort.SortFields.Add Key:=Range("G20:G" & Range("G" & Rows.Count).End(xlUp).Row), SortOn:=xlSortOnValues, Order:=xlAscending, CustomOrder:="A", DataOption:=xlSortNormal ActiveWorkbook.Worksheets("Phop").Sort.SortFields.Add Key:=Range("H20:H" & Range("H" & Rows.Count).End(xlUp).Row), SortOn:=xlSortOnValues, Order:=xlAscending, CustomOrder:="A", DataOption:=xlSortNormal ActiveWorkbook.Worksheets("Phop").Sort.SortFields.Add Key:=Range("I20:I" & Range("I" & Rows.Count).End(xlUp).Row), SortOn:=xlSortOnValues, Order:=xlAscending, CustomOrder:="A", DataOption:=xlSortNormal With ActiveWorkbook.Worksheets("Phop").Sort .SetRange Range("A19:J" & Range("A" & Rows.Count).End(xlUp).Row) .Header = xlYes .MatchCase = False .Orientation = xlTopToBottom .SortMethod = xlPinYin .Apply End With Range("A20").Select End Sub