Live-Forum - Die aktuellen Beiträge
Datum
Titel
28.03.2024 21:12:36
28.03.2024 18:31:49
Anzeige
Archiv - Navigation
912to916
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
912to916
912to916
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

VBA: keine Duplikate

VBA: keine Duplikate
10.10.2007 09:33:56
jensp
Guten Morgen,
ich möchte in einer Schleife einlesen und diese an einer anderen Stelle wieder ausgeben. Allerdings soll die Ausgabe eindeutig sein, d.h. evtl. vorhandene Duplikate nicht ausgeben.
Hat jemand hierfür eine Lösung?
Danke, Jens

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: VBA: keine Duplikate
10.10.2007 10:11:17
Wolli
Hallo Jens, wenn Du das programmgesteuert machen willst, musst Du vor jeder Ausgabe zunächst prüfen, ob der Wert schon drinsteht. Bei langen Listen rechenaufwendig.
Vielleicht ist es sinnvoller, erstmal alles auszugeben und dann den Spezialfilter einzusetzen, um Duplikate zu eliminieren.
Deine Frage ist leider seeeeehr vage formuliert. Bei weiteren Rückfragen benötigen wir mehr Details.
Gruß, Wolli

AW: VBA: keine Duplikate
10.10.2007 10:27:00
jensp
Danke für Deine Antwort! Ich werde es dann wohl mit dem Spezialfilter probieren!
Jens

AW: VBA: keine Duplikate
10.10.2007 22:49:00
Daniel
Hi
auch den Spezial-Filter kann man programmgesteuert einsetzen.
führ die Aktion einfach mal aus, und lass dabei den Recorder mitlaufen.
um Werte von Spalte A nach Spalte B ohne Dublikate zu kopieren, brauchst du folgenden Code:

Columns("A:A").AdvancedFilter Action:=xlFilterCopy, CopyToRange:=Range("B1"), Unique:=True


ist eine Zeile anstelle von ner Komplexen Schleife.
Gruß, Daniel

Anzeige
AW: VBA: keine Duplikate
10.10.2007 10:45:00
Mac4
Hallo Jens,
ich habe mir das mal aus rein sportlichen Gründen programmiert (wie schon gesagt, geht das ja auch bequem über den Spezialfilter).

Sub ohne_Duplikate()
'Auslesen der Daten aus Spalte A (hier sind Doppler dabei) und Wiedergabe aller Einzelwerte in
'Spalte B
Dim Arr()
Dim Position As Variant
Dim Zl As Long
Zl = 1
ReDim Arr(0)
For i = 1 To [A65536].End(xlUp).Row
Position = Application.Match(Cells(i, "A"), Arr, 0)
If IsError(Position) Then
ReDim Preserve Arr(0 To Zl)
Arr(Zl - 1) = Cells(i, "A")
Zl = Zl + 1
End If
Next
[B1].Resize(UBound(Arr) + 1) = Application.Transpose(Arr())
End Sub


Marc

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige