Live-Forum - Die aktuellen Beiträge
Datum
Titel
28.03.2024 21:12:36
28.03.2024 18:31:49
Anzeige
Archiv - Navigation
1104to1108
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

Daten sortieren in String nach zeichen Array

Daten sortieren in String nach zeichen Array
chris
Hallo VBa Experten, ich muss euch heute mal wieder um Hilfe bitten.
ich habe einen Code(unten) dieser steckt in einer schleife (xx)
in dieser Schleifen füge ich namen hinzu.
In jeder zelle steht ein name und ein kürzel.Das kürzel kommt nach dem 2 leerzeichen.
Also z.b
"Christian" "Nachname" "AKürzel" "usw..."
"Michael" "Nachname" "FKürzel" "usw... "
"Thomas" "Nachname" "BKürzel" "usw... "
Jetzt füge ich diese in eine Variable ein mit einem zeilenumbruch nach jeder zeile chr(10) (siehe unten)
leider sind die Daten aber nicht so sortiert wie ich das gerne hätte.Da ist auch schon das Problem.
Es soll nicht nach dem namen sortiert werden sondern nach dem Kürzel.Also nach Kürzel.
Wie könnte ich das in VBA umsetzen ?
Also das in der variable Unterschriften die ganzen Namen sortiert nach kürzel stehen.
Unterschriften = Unterschriften & Chr(10) & User.Worksheets("daten").Cells(Zeile_Db, xx)
ich hoffe ihr könnt mir helfen.
Würde mich sehr freuen.
Danke
Gruß Chris

6
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Benutzer
Anzeige
AW: Daten sortieren in String nach zeichen Array
06.10.2009 17:21:51
Tino
Hallo,
bin mir nicht sicher ob Du es so meinst, drücke auf den Button in der Tabelle.
https://www.herber.de/bbs/user/64914.xls
Gruß Tino
AW: Daten sortieren in String nach zeichen Array
06.10.2009 19:57:22
chris
Tino absolut genau das was ich gesucht habe !!!!!!!!
Vielen Dank und schönen Abend noch !
AW: Noch einmal offen Tino ?! danke
07.10.2009 08:23:03
chris
Hallo Tino,
wie schon gestern gesagt klappt es perfekt.
Nur ein problem gibt es noch.
ich habe die Namen und Kürzel schon in einem Array und nicht in einer Tabelle.
das Array sieht so aus:
vor1 Michael Dkürzel1
vor2 Guenter Bkürzel2
usw..
Und das Array ist eigentlich kein Array sondern ein String.
Aber in dem String sind schon nach jedem Kürzel zeilenumbrüche also chr(10)
Wie kann ich dein sortier Makro auf diesen String anwenden ?
Würde mich noch einmal sehr über Hilfe freuen.
Vielen dank
Anzeige
AW: Noch einmal offen Tino ?! danke
07.10.2009 15:30:25
Tino
Hallo,
versuche mal und ersetzen den Code in Modul2 durch diesen.
Sub SortiereString()
Dim Bereich As Range
Dim meAr, tempAr(), TextAr
Dim A As Long, AA As Long
Dim strMeinText As String

strMeinText = "Christian Nachname AKürzel" & Chr(10) & _
              "Michael Nachname FKürzel" & Chr(10) & _
              "Christian Nachname AKürzel" & Chr(10) & _
              "Michael Nachname FKürzel" & Chr(10) & _
              "Christian Nachname AKürzel" & Chr(10) & _
              "Michael Nachname FKürzel" & Chr(10) & _
              "Christian Nachname AKürzel" & Chr(10) & _
              "Michael Nachname FKürzel" & Chr(10) & _
              "Christian Nachname AKürzel" & Chr(10) & _
              "Michael Nachname FKürzel" & Chr(10) & _
              "Christian Nachname AKürzel" & Chr(10) & _
              "Michael Nachname FKürzel" & Chr(10) & _
              "Thomas Nachname BKürzel"

meAr = Split(strMeinText, Chr(10))

Redim Preserve tempAr(Ubound(meAr), 0)

For A = 0 To Ubound(meAr)
    If InStr(meAr(A), " ") > 0 Then
        TextAr = Split(meAr(A), " ")
        For AA = Lbound(TextAr) To Ubound(TextAr)
            If AA > Ubound(tempAr, 2) Then Redim Preserve tempAr(Ubound(tempAr), AA)
            tempAr(A, AA) = TextAr(AA)
        Next AA
    End If
Next A

prcQuickSort Lbound(tempAr), Ubound(tempAr), 2, True, tempAr

strMeinText = ""

For A = 0 To Ubound(tempAr)
   
    For AA = 0 To Ubound(tempAr, 2)
     strMeinText = strMeinText & tempAr(A, AA)
     If AA < Ubound(tempAr, 2) Then strMeinText = strMeinText & " "
    Next AA
    If A < Ubound(tempAr) Then strMeinText = strMeinText & Chr(13)
Next A

 MsgBox strMeinText
End Sub
Gruß Tino
Anzeige
AW: Daten sortieren in String nach zeichen Array
06.10.2009 19:42:02
Chris
Servus Namensvetter,
ich hab hier auch noch was (etwas anders als bei Tino und mit Erklärung), aber ich denke die Lösung von Tino ist sehr gut.
https://www.herber.de/bbs/user/64916.xls
Makro mit Alt+F8 ausführen.
Gruß
Chris
AW: Daten sortieren in String nach zeichen Array
06.10.2009 19:58:41
chris
Hallo Chris,
auch Dir noch einmal vielen dank !
gruß Chris :)

301 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige