Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1856to1860
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Sortieren in Zelle mit VBA

Sortieren in Zelle mit VBA
16.11.2021 14:15:18
Mike07
Hallo,
kann mir mal jemand den Code den ich angefangen habe vervollständigen, ich bin einfach zu lange raus as VBA um das auf die schnelle zu schaffen, so dass es funktioniert.
Ich möchte Werte die alle in einer einzigen Zelle stehen aufsteigend sortieren, aber nicht die erste Zeile in der Zelle, die Werte sind in der Zelle alle durch Zeilenumbruch getrennt. Unten ist auch das Excel File. Wäre super wenn jemand das schnell machen könnte zumindest im groben. Danke!
Excel File:
https://www.herber.de/bbs/user/149176.xlsm
  • 
    Sub Sortieren()
    Dim Ar() As String
    Dim A As String
    Dim Wert1 As Integer
    Dim Wert2 As Integer
    Dim Temp As String
    Dim Ausgabe As String
    A = Range(ActiveCell.Address).Value
    Ar = Split(A, Chr(10))
    For Wert1 = 0 To UBound(Ar)
    For Wert2 = Wert1 + 1 To UBound(Ar)
    If Ar(Wert1) > Ar(Wert2) Then
    Temp = Ar(Wert1)
    Ar(Wert1) = Ar(Wert2)
    Ar(Wert1) = Temp
    End If
    Next Wert2
    Next Wert1
    Ausgabe = Join(Ar)
    Range("D1").Value = Ausgabe
    End Sub
    

  • Gruß

    3
    Beiträge zum Forumthread
    Beiträge zu diesem Forumthread

    Betreff
    Datum
    Anwender
    Anzeige
    AW: Sortieren in Zelle mit VBA
    16.11.2021 14:34:36
    peterk
    Hallo
    
    Sub Sortieren()
    Dim Ar As Variant
    Dim A As String
    Dim Wert1 As Integer
    Dim Temp As String
    Dim Ausgabe As String
    Dim swap As Boolean
    A = Range("A1").Value
    Ar = Split(A, Chr(10))
    Do
    swap = False
    For Wert1 = 0 To UBound(Ar) - 1
    If Ar(Wert1) > Ar(Wert1 + 1) Then
    Temp = Ar(Wert1)
    Ar(Wert1) = Ar(Wert1 + 1)
    Ar(Wert1 + 1) = Temp
    swap = True
    End If
    Next Wert1
    Loop Until Not swap
    Ausgabe = Join(Ar)
    Range("D1").Value = Ausgabe
    End Sub
    
    Peter
    AW: Sortieren in Zelle mit VBA
    16.11.2021 14:36:56
    Rudi
    Hallo,
    ohne den ersten Wert:
    
    Sub Sortieren()
    Dim Ar() As String
    Dim A As String
    Dim Wert1 As Integer
    Dim Wert2 As Integer
    Dim Temp As String
    Dim Ausgabe As String
    A = Range(ActiveCell.Address).Value
    Ar = Split(A, Chr(10))
    For Wert1 = 1 To UBound(Ar)
    For Wert2 = Wert1 + 1 To UBound(Ar)
    If Ar(Wert1) > Ar(Wert2) Then
    Temp = Ar(Wert1)
    Ar(Wert1) = Ar(Wert2)
    Ar(Wert2) = Temp
    End If
    Next Wert2
    Next Wert1
    Ausgabe = Join(Ar, Chr(10))
    Range("D1").Value = Ausgabe
    End Sub
    
    Gruß
    Rudi
    Anzeige
    AW: Sortieren in Zelle mit VBA
    16.11.2021 17:20:30
    GerdL
    Moin,
    nach Datümern sortieren?
    
    Sub Unit()
    Dim Ar() As String
    Dim Wert1 As Integer
    Dim Wert2 As Integer
    Dim Temp As String
    Ar = Split(CStr(ActiveCell.Value), Chr(10))
    For Wert1 = 1 To UBound(Ar)
    For Wert2 = Wert1 + 1 To UBound(Ar)
    If CDate(Split(Ar(Wert1), " ")(0)) > CDate(Split(Ar(Wert2), " ")(0)) Then
    Temp = Ar(Wert1)
    Ar(Wert1) = Ar(Wert2)
    Ar(Wert2) = Temp
    End If
    Next Wert2
    Next Wert1
    Range("D1").Value = Join(Ar, Chr(10))
    End Sub
    
    Gruß Gerd

    Beliebteste Forumthreads (12 Monate)

    Anzeige

    Beliebteste Forumthreads (12 Monate)

    Anzeige
    Anzeige
    Anzeige