VBA: hinzufügen von eindeutigen Werten in einem Bereich, um einen neuen Bereich

Ich habe eine unsortierte Liste von Namen in Tabelle1, Spalte a Viele dieser Namen erscheinen mehr als einmal in der Liste.

In Tabelle2 Spalte A möchte ich eine alphabetisch sortierte Liste der Namen ohne doppelte Werte.

Was ist die optimale Methode, dies zu erreichen, mithilfe von VBA?

Methoden, die ich bisher gesehen habe, gehören:

  1. Machen eine Sammlung mit CStr(name) als Schlüssel, Durchlaufen der Reihe und versuchen, um jeden Namen, und wenn es ein Fehler ist es nicht eindeutig, es zu ignorieren, andere erweitern das Spektrum von 1 Zelle und fügen Sie den Namen
  2. Gleiche wie (1), außer ignorieren, über die Fehler. Wenn die Schleife abgeschlossen ist, werden nur eindeutige Werte werden in der Sammlung: fügen Sie die ganze Sammlung auf den Bereich
  3. Mit dem match-Arbeitsblatt-Funktion auf die Reihe: wenn keine übereinstimmung, erweitern der Auswahl um eine Zelle und fügen Sie den Namen
  4. Vielleicht einige simulation der "Duplikate entfernen" - Taste auf der Registerkarte "Daten"? (habe nicht in diese sah)
  • Ich würde in mit Option 4. 1) ein makro Aufzeichnen 2) Kopieren Col-2 Blatt 3) Wählen Sie Col und drücken Sie die Duplikate entfernen-Taste unter der Registerkarte "Daten", wenn Sie Excel 2007 verwenden 4) Art der Daten 🙂 probieren Sie es aus und wenn du nicht weiter kommst, dann poste zurück 🙂
  • +1 für Siddharth Antwort. Dies sollte sehr einfach sein.
  • Fragen wie diese wurden aufgefordert, so viele Male auf SO... Haben Sie einen Blick auf die vorherigen Antworten (hier zum Beispiel), etwas ausprobieren, sehen, ob es funktioniert, Holen Sie sich zurück zu uns mit Problemen. Dieser und dieser wäre nützlich zu Lesen-auch für Sie.
InformationsquelleAutor Swiftslide | 2012-05-09
Schreibe einen Kommentar