Code ein Excel-VBA-Sortieren mit custom order und einen Wert mit Komma

In VBA, Excel ermöglicht die Sortierung von Werten mithilfe der CustomOrder parameter wählen Sie die Sequenz-Elemente sind bestellt. Leider ist die Reihenfolge der Elemente durch Kommata getrennt, und eine meiner Sortieren Sie Elemente enthält Kommas. Zum Beispiel, ich möchte zum Sortieren der Daten in der ersten Spalte die Kategorien, in der zweiten Spalte. Die "Luft, Land oder Meer" - Kategorie enthält Kommas.

Data1 Luft-Und Raumfahrt 
Data2 Cyberspace 
Data3 Cyberspace 
Data4 Luft -, Land -, oder Seeweg 
Data5 Luft-Und Raumfahrt 
Data6 Luft -, Land -, oder Seeweg 
Data7 Cyberspace 

Wenn Sie beim aufzeichnen eines Makros VBA, der code sieht wie folgt aus:

MyWorksheet.Sort.SortFields.Add Key:=Range( _
    "B:B"), SortOn:=xlSortOnValues, Order:=xlAscending, _
    CustomOrder:= "Cyberspace,Air,Land,or Sea,Aerospace", _
    DataOption:=xlSortNormal  
MyWorksheet.Sort.Apply

So, die benutzerdefinierte Sortierreihenfolge werden sollte, "Cyberspace" und dann "Luft, Land oder Meer", dann "Raumfahrt". Die zweite Kategorie behandelt wird, als drei Kategorien, weil die Kommas. Die Zeilen mit "Luft, Land oder Meer" sortiert auf den Boden, weil Excel nicht finden, eine eigene Art Spiel für Sie.
Gibt es einen Weg, um CustomOrder arbeiten mit einer Kategorie, die enthält eingebettete Kommas?

Ich versucht, indem Sie doppelte Anführungszeichen um die Kategorie, und ich versucht, anstelle der Trennzeichen Kommas mit Semikolon getrennt (in der Hoffnung, Excel würde annehmen, ein Semikolon statt Komma). Weder arbeitete.

InformationsquelleAutor Dean Hill | 2011-05-23
Schreibe einen Kommentar