Supportnet Computer
Planet of Tech

Supportnet / Forum / Tabellenkalkulation

Sortieren in Excel





Frage

Hallo, möchte 1900/2 1900/12 1900/4 1900/7 1900/20 wie folgt sortienen: 1900/2 1900/4 1900/7 1900/12 1900/20 leider sortiert Excel 2000 (Win2000) wie folgt: 1900/12 1900/2 1900/20 1900/4 1900/7 Weiß jemand eine Lösung ? Herzlichen Dank Lars

Antwort 1 von Saarbauer

Hallo,

Eine Lösung wäre bei allen einstelligen Zahlen eine null davor zu setzen, somit würde aus
1900/2
1900/02

Eine weitere Lösung wäre die Angaben auf 2 Zellen aufzuteilen

Leider sind die Angaben nicht so aussagekräfig, dass man sagen kann ob eine der beiden Lösungen brauchbar ist

Gruß

Helmut

Antwort 2 von JLM

Hallo Lars

Ich würde Daten Text in Spalten probieren

Getrennt - Trennzeichen Anderes /
Die Daten werden somit in Spalte A 1900 und Spalte B 12 ( bsp: 1900/12)

Du kannst nach Spalte B sortieren
Hoffe es hilft dir weiter
Gruss
JLM

Antwort 3 von nighty

hi all :))

wie gewünscht :))

gruss nighty

Option Explicit
Sub suchen()
Dim zaehler0 As Long
Dim zaehler2 As Long
Dim zaehler3 As Integer
Dim zaehler4 As Boolean
Dim neu As String
For zaehler0 = 1 To ActiveSheet.UsedRange.SpecialCells(xlCellTypeLastCell).Row + 1
For zaehler3 = 1 To Len(Cells(zaehler0, 1))
If Mid(Cells(zaehler0, 1), zaehler3, 1) = "/" Then
If Len(Mid(Cells(zaehler0, 1), zaehler3 + 1, Len(Cells(zaehler0, 1)) - Len(Mid(Cells(zaehler0, 1), zaehler3 + 1, Len(Cells(zaehler0, 1)))))) = 1 Then
neu = "00" + Mid(Cells(zaehler0, 1), zaehler3 + 1, Len(Cells(zaehler0, 1)))
Cells(zaehler0, 1) = neu + Mid(Cells(zaehler0, 1), 1, zaehler3 - 1)
zaehler4 = True
End If
If Len(Mid(Cells(zaehler0, 1), zaehler3 + 1, Len(Cells(zaehler0, 1)) - Len(Mid(Cells(zaehler0, 1), zaehler3 + 1, Len(Cells(zaehler0, 1)))))) = 2 _
And zaehler4 = False Then
neu = "0" + Mid(Cells(zaehler0, 1), zaehler3 + 1, Len(Cells(zaehler0, 1)))
Cells(zaehler0, 1) = neu + Mid(Cells(zaehler0, 1), 1, zaehler3 - 1)
zaehler4 = True
End If
If Len(Mid(Cells(zaehler0, 1), zaehler3 + 1, Len(Cells(zaehler0, 1)) - Len(Mid(Cells(zaehler0, 1), zaehler3 + 1, Len(Cells(zaehler0, 1)))))) = 3 _
And zaehler4 = False Then
neu = Mid(Cells(zaehler0, 1), zaehler3 + 1, Len(Cells(zaehler0, 1)))
Cells(zaehler0, 1) = neu + Mid(Cells(zaehler0, 1), 1, zaehler3 - 1)
End If
End If
Next zaehler3
zaehler4 = False
Next zaehler0
Rows("1:65535").Sort Key1:=Range("A1"), Order1:=xlAscending, Header:=xlGuess, _
OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom
For zaehler2 = 1 To ActiveSheet.UsedRange.SpecialCells(xlCellTypeLastCell).Row + 1
If Cells(zaehler2, 1) <> "" Then
Cells(zaehler2, 1) = Mid(Cells(zaehler2, 1), 4, Len(Cells(zaehler2, 1) - 3)) + "/" + Mid(Str(Val(Mid(Cells(zaehler2, 1), 1, 3))), 2, Len(Str(Val(Mid(Cells(zaehler2, 1), 1, 3)))) - 1)
End If
Next zaehler2
End Sub

Antwort 4 von nighty

hi all :)

ich vergass noch dieses

es werden nur 3 stellen als max hinter dem schrästrich erlaubt

z.b.

1900/222

gruss nighty

Ich möchte kostenlos eine Frage an die Mitglieder stellen:


Ähnliche Themen:


Suche in allen vorhandenen Beiträgen: