Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
584to588
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
584to588
584to588
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Adressen sortieren mit VBA

Adressen sortieren mit VBA
13.03.2005 17:32:19
WHN
Hallo Leute,
ich habe eine Liste mit 50 Namen angelegt und möchte die Namen nach dem ABC sortieren.
Ich habe mir ein Array mit 50 Strings angeleg: Dim Name(1 to 50) as String
Jetzt habe ich das Array an eine Prozedur übergeben, in der Prozedur sollen die Namen sortiert und dann im Array wieder zurückgegeben werden.
Die Zurückgabe des Arrays klappt ohne Probleme, aber das Sortieren mit Buchstaben bringe ich nicht hin (mit Zahlen ist es kein Problen).
Kann mir Jemand einen Tip geben oder gibt es vielleicht irgendwo ein Beispiel.
Vielen Dank für Hilfe schon mal im Voraus.
Freundliche Grüße
Werner

2
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Adressen sortieren mit VBA
13.03.2005 17:38:03
Hajo_Zi
Hallo Werner,
wen Du solche Problem mit VBA löst müßtest Du Dir aus folgendem Code das passende raussuchen können.

Private Sub UserForm_Initialize()
Dim StListe() As String
Dim Loletzte As Long
Dim LoI As Long
Loletzte = 65536
If Range("A65536") = "" Then Loletzte = Range("A65536").End(xlUp).Row
'Array Dimensionieren
ReDim Preserve StListe(1 To Loletzte)
For LoI = 2 To Loletzte
StListe(LoI - 1) = Cells(LoI, 1)
Next LoI
'   Liste  sortieren
Sort_A_Z StListe, LBound(StListe), UBound(StListe)  ' Lbound kleinster Wert,UBound Größter Wert
'   Liste in Listbox übertragen ohne Doppelte
ListBox1.AddItem StListe(1)
For LoI = 2 To Loletzte
If StListe(LoI) <> StListe(LoI - 1) Then ListBox1.AddItem StListe(LoI)
Next LoI
End Sub

Public Sub Sort_Z_A(SortArray, L, R)
' sortieren von Z bis A
' von GerdZ Herber.de
Dim I, J, x, y
I = L
J = R
x = SortArray((L + R) / 2)
While (I While (SortArray(I) I = I + 1
Wend
While (x L)
J = J - 1
Wend
If (I y = SortArray(I)
SortArray(I) = SortArray(J)
SortArray(J) = y
I = I + 1
J = J - 1
End If
Wend
If (L If (I End Sub
Public Sub Sort_A_Z(SortArray, L, R)
' sortieren von A bis Z
' von GerdZ Herber.de
Dim I, J, x, y
I = L
J = R
x = SortArray((L + R) / 2)
While (I While (SortArray(I) > x And I I = I + 1
Wend
While (x > SortArray(J) And J > L)
J = J - 1
Wend
If (I y = SortArray(I)
SortArray(I) = SortArray(J)
SortArray(J) = y
I = I + 1
J = J - 1
End If
Wend
If (L If (I End Sub
Bitte keine Mail, Probleme sollten im Forum gelöst werden.
Microsoft MVP für Excel
Das Forum lebt auch von den Rückmeldungen.
Betriebssystem XP Home SP2 und Excel Version 2003 SP1.


Anzeige
AW: Adressen sortieren mit VBA - DANKE
13.03.2005 17:46:44
WHN
Hallo Hajo, Danke für den Quelltext.
Da habe ich jetzt erstmal einiges zu tun.
Viele Grüße
Werner

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige