Das Archiv des Excel-Forums

ohne Vornamen sortieren

Bild

Betrifft: ohne Vornamen sortieren
von: Helmut

Geschrieben am: 24.07.2008 14:39:24

Hallo Excel-Profis,
wie kann ich eine Spalte nach Nachnamen sortieren, obwohl zuerst der abgekürzte Vorname in den Zellen steht?
z.B. so sehen meine Einträge aus:
H. Oberle
Ti. Müller
G. Gerstner
Sch. Kastner
usw.
Vielen Dank im voraus.
Gruß Helmut

Bild

Betrifft: AW: ohne Vornamen sortieren
von: Reinhard
Geschrieben am: 24.07.2008 14:42:30
Hi Helmut,
Daten--Text in Spalten, nach Leerzechen trennen, dann nach der reinen Nachnamensspalte sortieren.
Gruß
Reinhard

Bild

Betrifft: AW: ohne Vornamen sortieren
von: Helmut

Geschrieben am: 24.07.2008 15:12:24
Hi Reinhard,
diese Möglichkeit kenne ich, erscheint mir aber nicht komfortabel, wenn man das öfters machen muß und dazu immer wieder Platz für Spalten schaffen muß.
Gibt es vielleicht auch eine Lösung über VBA?
Nochmals Danke im voraus.
Helmut

Bild

Betrifft: AW: ohne Vornamen sortieren
von: Klaus M.vdT.
Geschrieben am: 24.07.2008 15:25:36
Moin Helmut,
Ist das erste Leerzeichen von links ein definitves Kriterium für die Trennung von Vor - und Nachnamen?
Ich würd mir einmalig eine Spalte mit der Formel =TEIL(A2;FINDEN(" ";A2)+1;9^9) einrichten und immer nach dieser kopieren. Eine reine VBA Lösung währe bestimmt möglich, aber sehr aufwendig.
Wenns gar keine Hilfsspalte sein soll, füg doch die o.g. Formel per VBA in die Spalte IV ein, sortiere nach IV und lösche IV danach wieder ...
Grüße,
Klaus M.vdT.

Bild

Betrifft: AW: ohne Vornamen sortieren
von: Roland Hochhäuser

Geschrieben am: 24.07.2008 15:27:56
Hallo Helmut,
den betreffenden Bereich markieren und folgendes Makro drüber laufen lassen:


Sub TextNurNachLeerzeichen()
Dim rng As Range
For Each rng In Selection
With rng
.Value = Right$(.Value, Len(.Value) - InStr(1, .Value, " "))
End With
Next
End Sub


War´s das?
Gruß
Roland Hochhäuser

Bild

Betrifft: AW: ohne Vornamen sortieren
von: Helmut
Geschrieben am: 24.07.2008 15:35:19
Hallo Roland,
das ist eine super-Lösung, so habe ich mir das gewünscht.
Wo lernt man solch fortgeschrittenen Code?
Vielen Dank nochmal.
Gruß Helmut

Bild

Betrifft: AW: ohne Vornamen sortieren
von: chris58

Geschrieben am: 26.07.2008 10:04:42
Hallo !
ich habe diesen Supercode entdeckt. Doch geht es, das trotz allem der Name vor dem Sortierkriterium erhalten bleibt. Denn wenn man den code drüberlaufen läßt, dann verschwindet der Vorname bzw. die Daten vor dem Suchkriterium.
Geht das ?
chris

Bild

Betrifft: AW: ohne Vornamen sortieren
von: Tino
Geschrieben am: 26.07.2008 11:01:15
Hallo,
hier mal eine Möglichkeit.
Dieser Code Erstellt in der letzen Spalte eine Formel um den Namen zu separieren.
Danach wird nach dieser Spalte Sortiert und zum Schluss wird diese Spalte wieder gelöscht.
In diesem Code wird davon ausgegangen, dass die Namen in Spalte A ab Zeile 2 stehen.


Sub Sortiere()
Dim Bereich As Range
Set Bereich = Range("A2", Cells(Rows.Count, 1).End(xlUp)). _
Offset(0, Columns.Count - 1)
Bereich.FormulaR1C1 = _
"=IF(ISERROR(FIND("" "",RC1)),IF(ISERROR(FIND" & _
"(""."",RC1)),"""",RIGHT(RC1,LEN(RC1)-FIND(""."",RC1)" & _
")),RIGHT(RC1,LEN(RC1)-FIND("" "",RC1)))"
Range("2:" & Cells(Rows.Count, 1).End(xlUp).Row).Sort _
Key1:=Cells(2, Columns.Count), Order1:=xlAscending, Header:=xlGuess, _
OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom, _
DataOption1:=xlSortNormal
Bereich.ClearContents
Set Bereich = Nothing
End Sub


Gruß Tino

www.VBA-Excel.de



Bild

Betrifft: AW: ohne Vornamen sortieren
von: chris

Geschrieben am: 26.07.2008 19:20:24
Danke, vorerst, doch wo muß ich änderen, wenn die Namen in Spalte B stehen. Ich habe von A2 Auf B2 geändert, doch das scheint zuwenig. Trau mich nicht den weiteren Code anzufassen, um diesen nicht ganz zu zerstören. Kannst mir bitte sagen, wo ich was, ändern muß.
Danke
chris

Bild

Betrifft: AW: ohne Vornamen sortieren
von: Tino
Geschrieben am: 26.07.2008 20:07:53
Hallo,
ohne zu testen, sollte so gehen.


Sub Sortiere()
Dim Bereich As Range
Set Bereich = Range("B2", Cells(Rows.Count, 2).End(xlUp)). _
Offset(0, Columns.Count - 2)
Bereich.FormulaR1C1 = _
"=IF(ISERROR(FIND("" "",RC2)),IF(ISERROR(FIND(""."",RC2)),""""," & _
"RIGHT(RC2,LEN(RC2)-FIND(""."",RC2))),RIGHT(RC2,LEN(RC2)-FIND("" "",RC2)))"
Range("2:" & Cells(Rows.Count, 1).End(xlUp).Row).Sort _
Key1:=Cells(2, Columns.Count), Order1:=xlAscending, Header:=xlGuess, _
OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom, _
DataOption1:=xlSortNormal
Bereich.ClearContents
Set Bereich = Nothing
End Sub


Bin jetzt auf einer Party, bin erst morgen wieder Online.
Bei Problemen, kann bestimmt auch ein anderer aushelfen.
Gruß Tino

www.VBA-Excel.de



Bild

Betrifft: AW: ohne Vornamen sortieren
von: chris

Geschrieben am: 26.07.2008 21:22:14
Hallo ..........also der Code, da verschwindet alles und kommt bei zeile 5000 wieder raus, aber ganz anders
chris

Bild

Betrifft: AW: ohne Vornamen sortieren
von: Tino
Geschrieben am: 27.07.2008 09:50:52
Hallo,
so aber jetzt passt der Code und Sortiert die Namen ab B2 bis zur letzten Zelle in B


Sub Sortiere()
Dim Bereich As Range
Set Bereich = Range("B2", Cells(Rows.Count, 2).End(xlUp)). _
Offset(0, Columns.Count - 2)
Bereich.FormulaR1C1 = _
"=IF(ISERROR(FIND("" "",RC2)),IF(ISERROR(FIND(""."",RC2)),""""," & _
"RIGHT(RC2,LEN(RC2)-FIND(""."",RC2))),RIGHT(RC2,LEN(RC2)-FIND("" "",RC2)))"
Range("2:" & Cells(Rows.Count, 2).End(xlUp).Row).Sort _
Key1:=Cells(2, Columns.Count), Order1:=xlAscending, Header:=xlGuess, _
OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom, _
DataOption1:=xlSortNormal
Bereich.ClearContents
Set Bereich = Nothing
End Sub


Gruß Tino

www.VBA-Excel.de



Bild

Betrifft: AW: ohne Vornamen sortieren
von: Roland Hochhäuser

Geschrieben am: 27.07.2008 09:57:23
Hallo chris,
wenn es konkret um Werte aus (nur) einer Spalte geht, folgender Ansatz: die Selection in die 1. Spalte eines zweispaltigen Array geben, die 2. Spalte des Arrays mit dem gekürzten String füllen, das komplette Array nach der 2. Spalte sortieren und dann die erste Array-Spalte in das Blatt zurückschreiben. Dürfte auch mit Bubble-Sort flotter gehen als ein Formelansatz.
Gruß
Roland Hochhäuser

 Bild

Excel-Beispiele zum Thema "ohne Vornamen sortieren"

Felder über VBA sortieren download Zellinhalte zeilenweise sortieren download
Nach dem Zufallsprinzip umsortieren download Menüpunkte sortieren download
Tabellen hinzufügen und sortieren download Alphanumerisch sortieren download
Werte in mehreren Spalten sortieren download IP-Nummern nach Gruppen sortieren download
Zeilenweise sortieren download Auf- und absteigend sortieren ohne Sortierfunktion download
Tabelle nach Datumseintrag automatisch sortieren download Viererblock-Datensätze sortieren download
Mehrere Tabellenblattbereich unabhängig voneinander sortieren download UserForm-ListBox-Einträge sortieren download
In Array einlesen, sortieren, auslesen download Adressliste mit jeweils Name, Straße, Ort sortieren download
Sortieren ein- und ausgeblendeter Zeilen download Mehrspaltige UserForm-ListBox sortieren download
Werte nach Häufigkeit sortieren download Adressen mit vorgegebenen Anfangsnamen sortieren download
Beim Sortieren Ä als Ae und Sch vor S download Daten in ListBoxes verschieben und sortieren download
Nach Geburtstag sortieren download Bei Eintrag Zeile in 2. Blatt kopieren und Tabellen sortieren download
Tabelle nach Farben sortieren download Eingabewerte in Spalte einsortieren download
Fußballergebnisse eingeben und Tabelle sortieren download Doppelte aus Array löschen und sortieren download
Tabelle nach Farbindizes sortieren download Sortieren und nur Uniques einlesen download
Tabelle alle 10 Sekunden sortieren download Sortieren der Arbeitsblätter nach Datums-Blattnamen download
Bei Doppelklick eine Tabelle sortieren download Lottozahlen generieren und sortieren download
Daten sortieren und bedingt drucken download Beispiele zum Thema Sortieren download