Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

860to864: Alpha-Sortierung / nur 1 X

Forumthread: Alpha-Sortierung / nur 1 X

Alpha-Sortierung / nur 1 X
08.04.2007 19:36:20
Erich
Hallo EXCEL-Freunde,
wenn ich eine Namens-Liste unsortiert in spalte A habe und ich möchte in der Spalte B per Formel (oder VBA)
eine alphasortierte Liste haben, bei der jeder Name nur einmal vorkommt, wie geht das?
Muster:
 AB
1VorgabeErgebnis
2AntonAnton
3MaxiChristoph
4HubertGeorg
5MaxiHubert
6ChristophMaxi
7Anton 
8Hubert 
9Georg 


Excel Tabellen im Web darstellen >> Excel Jeanie HTML 4
Besten Dank!
mfg
Erich
Anzeige

5
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Alpha-Sortierung / nur 1 X
08.04.2007 20:02:00
Daniel
Hallo
per Makro so:
Sub Makro1() Range(Range("a1"), Range("a1").End(xlDown)).AdvancedFilter Action:=xlFilterCopy, _ CopyToRange:=Range("B1"), Unique:=True Range(Range("b1"), Range("b1").End(xlDown)).Sort Key1:=Range("B2"), Order1:=xlAscending, _ Header:=xlYes, OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom, DataOption1:=xlSortNormal End Sub die erste Zeile sollte die Überschrift enthalten, Leerzellen dürfen nicht drin sein.
gruß, Daniel
ps. ich lass die Frage mal offen, falls noch jemand eine Formellösung hat
Anzeige
AW: Spezialfilter
08.04.2007 20:27:00
Matthias
Hallo,
Sollte eigentlich mit Daten-Filter-Spezialfilter funktionieren.
  • Listenbereich definieren

  • an eine andere Stelle kopieren

  • keine Duplikate

  • Gruß Matthias
    AW: Alpha-Sortierung / nur 1 X
    08.04.2007 21:05:47
    Peter
    Hallo Erich,
    hier nachfolgend zwei getestete Varianten in VBA


    Option Explicit
    '
    '   wenn ich eine Namens-Liste unsortiert in Spalte A habe und ich möchte
    '   in der Spalte B per VBA eine alphasortierte Liste haben, bei der jeder
    '   Name nur einmal vorkommt, wie geht das?
    '
    '   Achtung: In Zeile 1 steht eine Überschrift !!!
    '
    Sub Sortieren_I()
    Dim lLetzte  As Long
        With Worksheets("Tabelle3") ' <== den Tabellenblattnamen ggf. anpassen !!!
           .Range("B2:B" & .Range("B65536").End(xlUp).Row).ClearContents
           lLetzte = .Range("A65536").End(xlUp).Row
           .Range("A2:A" & lLetzte).AdvancedFilter Action:=xlFilterCopy, _
              CriteriaRange:=Range("A2:A" & lLetzte), _
              CopyToRange:=Range("B2:B" & lLetzte), Unique:=True
           .Range("B2:B" & lLetzte).Sort _
              Key1:=.Range("B2"), Order1:=xlAscending, _
              Header:=xlYes, OrderCustom:=1, _
              MatchCase:=False, Orientation:=xlTopToBottom
        End With
    End Sub
    Public Sub Sortieren_II()
    Dim lZeile_Q  As Long
    Dim lZeile_Z  As Long: lZeile_Z = 2
       With Worksheets("Tabelle3") ' <== den Tabellenblattnamen ggf. anpassen !!!
          .Range("B2:B" & .Range("B65536").End(xlUp).Row).ClearContents
          For lZeile_Q = 2 To .Range("A65536").End(xlUp).Row
             If Not .Range("A" & lZeile_Q).Value = "" Then
                If Application.WorksheetFunction.CountIf(.Columns(2), _
                   .Range("A" & lZeile_Q).Value) = 0 Then
                   Range("B" & lZeile_Z).Value = Range("A" & lZeile_Q).Value
                   lZeile_Z = lZeile_Z + 1
                End If
             End If
          Next lZeile_Q
          .Range(Range("B2"), .Range("B2").End(xlDown)).Sort _
              Key1:=.Range("B2"), Order1:=xlAscending, _
              Header:=xlYes, OrderCustom:=1, _
              MatchCase:=False, Orientation:=xlTopToBottom
       End With
    End Sub


    Gruß Peter
    Anzeige
    AW: Alpha-Sortierung / nur 1 X
    08.04.2007 21:22:40
    Peter
    Hallo Erich,
    bei meiner Variante I erscheint (zumindest) ein Name doppelt !!!
    Die Variante II läuft fehlerfrei.
    Gruß Peter
    Danke Peter! o.T.
    09.04.2007 09:20:37
    Erich
    .
    ;

    Beliebteste Forumthreads (12 Monate)

    Anzeige
    Anzeige
    Entdecke mehr
    Finde genau, was du suchst

    Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

    Suche nach den besten Antworten
    Unsere beliebtesten Threads

    Entdecke unsere meistgeklickten Beiträge in der Google Suche

    Top 100 Threads jetzt ansehen
    Anzeige