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

array, 2 fragen

array, 2 fragen
25.09.2005 17:06:06
Martin
Hallo zusammen
Ich muss mich wohl mal mit arrays beschäftigen. Bisher immer drumrum gekommen. Mein Problem: ich wollte Werte aus spalte4 in einen Array einlesen, OHNE doppelte Einträge. Heißt jeder Wert soll im Array nur einmal vorkommen. Kann mir da BITTE jemand mal kurz einen Code schreiben, oder mir nen Link geben, den ich mir anschauen kann. Im Archiv habe ich nix gefunden.
und 2.:
da ich nicht weiß wieviele Werte in Spalte4 stehen (1-max60000), werde ich wohl einen dynamischen Array verwenden. Nun die Frage: wann dimensioniert man denn den Array neu? In jeder Schleife, oder hält das den prozess nur auf? Oder immer bei jedem 10.Schleifenwert um 10 höher?
vielen dank für eure Mühe. Schönen Sonntag noch
gruß Martin

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

Betreff
Datum
Anwender
Anzeige
AW: array, 2 fragen
25.09.2005 17:11:47
Hajo_Zi
Hallo Martin,
bei VBA Gut bekommst Du folgenden Code für eine Listbox angepast.

Option Explicit
'   erstellt von Hajo.Ziplies@web.de
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 <= J)
While (SortArray(I) < x And I < R)
I = I + 1
Wend
While (x < SortArray(J) And J > L)
J = J - 1
Wend
If (I <= J) Then
y = SortArray(I)
SortArray(I) = SortArray(J)
SortArray(J) = y
I = I + 1
J = J - 1
End If
Wend
If (L < J) Then Call Sort_Z_A(SortArray, L, J)
If (I < R) Then Call Sort_Z_A(SortArray, I, R)
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 <= J)
While (SortArray(I) > x And I < R)
I = I + 1
Wend
While (x > SortArray(J) And J > L)
J = J - 1
Wend
If (I <= J) Then
y = SortArray(I)
SortArray(I) = SortArray(J)
SortArray(J) = y
I = I + 1
J = J - 1
End If
Wend
If (L < J) Then Call Sort_A_Z(SortArray, L, J)
If (I < R) Then Call Sort_A_Z(SortArray, I, R)
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: array, 2 fragen
25.09.2005 17:22:21
MArtin
BOah, watschnelle Antwort. Danke dir. Ich werde mir den Code heute NAcht in der Firma mal ansehen. Dannke dir, Hajo
gruß Martin

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige