Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: Sortieren Text mit zahl

Sortieren Text mit zahl
Markus
Hallo alle zusammen,
folgendes Problem quält mich.
Habe eine liste mit Strasse und nummer bs.p hofstr. 12 / hofstr. 2 usw.
mein Problem ist das wenn ich die liste Sortiere, es mir den TExt mit der 12 an den anfang setzt und nicht die 2
will aber (weil logisch) die hausnummer 2 vor 12 kommt diese nach oben haben.
gibt es da ne lösung?
MFG Markus
Anzeige

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Benutzer
Anzeige
Nachfrage
05.08.2010 14:10:22
Tino
Hallo,
kann es auch eine VBA Lösung sein?
Gruß Tino
AW: Nachfrage
05.08.2010 14:12:00
Markus
hallo
ja wäre auch in Ordnung
Gruß Markus
kannst mal testen...
05.08.2010 14:50:48
Tino
Hallo,
die Spalte wo die Straßen stehen und die Tabelle müsstest Du im Code anpassen.
Zudem müssen zwei Spalten frei sein für Hilfspalten die am Ende wieder gelöscht werden.
Ist dies nicht möglich, müssen man sich was anderes einfallen lassen.
(Hilfstabelle oder Datei oder Array, kommt auf den Tabellenaufbau an)
Sub Sortiere()
Dim rngRange As Range
Dim oWS As Worksheet

'Spalte anpassen 
Const lnrColSortSpalte As Long = 3
'Tabelle anpassen 
Set oWS = Sheets("Tabelle1")

With Application
    .ScreenUpdating = False
    .EnableEvents = False
    
        With oWS
            With .UsedRange
                With .Columns(.Columns.Count).Offset(0, 1).Resize(, 2)
                     .Columns(1).FormulaR1C1 = _
                     "=LOOKUP(9^9,--RIGHT(RC" & lnrColSortSpalte & ",COLUMN(R1)))"
                     .Columns(2).FormulaR1C1 = _
                     "=SUBSTITUTE(RC" & lnrColSortSpalte & ",RC[-1],"""")"
                End With
            End With
            
            With .UsedRange
                 .Sort _
                     Key1:=.Cells(2, .Columns.Count), Order1:=xlAscending, _
                     Key2:=.Cells(2, .Columns.Count - 1), Order2:=xlAscending, Header:=xlYes
                 
                    oWS.Range(.Columns(.Columns.Count), .Columns(.Columns.Count - 1)).EntireColumn.Delete
            End With
        End With

    .ScreenUpdating = True
    .EnableEvents = True
End With
End Sub
Gruß Tino
Anzeige
Nur, wenn nach den Hausnr (als Zahl!) separat...
05.08.2010 14:12:27
Luc:-?
…sortiert wird, Markus!
Evtl hat man aber auf Excelformeln auch dafür eine Fml-Lösung gefunden… ;-)
Gruß Luc :-?
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige
Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken
Anzeige

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