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

Doppelte Datensätze markieren

Doppelte Datensätze markieren
13.10.2003 12:56:55
Burghard
Hallo,

ich brauche mal Hilfe. Kann mir jemand dieses Makro vielleicht so umschreiben, daß es auch funktioniert, wenn in den Spalten B, C, ... auch Daten stehen?
Im Augenblick markiert dieses Makro nur die doppelten Datensätze (der Spalte A), wenn rechts von Spalte A keine ausgefüllten Zellen mehr stehen.

Über eine Hilfestellung würde ich mich freuen.

Gruß Burghard


Sub Vergleich2()
Dim iRowA As Integer, iRowB As Integer
Dim iCol As Integer, iColor As Integer
Dim iRowC As Integer
Dim bln As Boolean, blnColor As Boolean
iRowA = 2
iColor = 2
Do Until IsEmpty(Cells(iRowA, 1))
iRowB = iRowA + 1
Do Until IsEmpty(Cells(iRowB, 1))
For iCol = 1 To 3
If Cells(iRowA, iCol) <> Cells(iRowB, iCol) Then
bln = True
Exit For
End If
Next iCol
If bln = False Then
If blnColor = False Then
iColor = iColor + 1
End If
If Cells(iRowB, 1).Interior.ColorIndex = _
xlColorIndexNone Then
If Cells(iRowA, 1).Interior.ColorIndex = _
xlColorIndexNone Then
With Worksheets(3)
iRowC = .Cells(Rows.Count, 1).End(xlUp).Row + 1
.Range(.Cells(iRowC, 1), .Cells(iRowC, 1)).Value = _
Range(Cells(iRowB, 1), Cells(iRowB, 1)).Value
End With
End If
Range(Cells(iRowA, 1), Cells(iRowA, 1)). _
Interior.ColorIndex = iColor
Range(Cells(iRowB, 1), Cells(iRowB, 1)). _
Interior.ColorIndex = iColor
blnColor = True
End If
End If
iRowB = iRowB + 1
bln = False
Loop
blnColor = False
iRowA = iRowA + 1
Loop
End Sub

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

Betreff
Datum
Anwender
Anzeige
AW: Alternative: bedingte Formatierung
16.10.2003 09:47:52
Burghard
Hallo Chris,

vielen Dank für den Tip. Er hat mir weitergeholfen.

Ich habe den Vorschlag aufgegriffen und ein Makro für meine Zwecke umgeschrieben. Ich weiß nicht, ob es ganz sauber programmiert ist, es funktioniert aber m.E. fehlerfrei.

Schönen Gruß

Burghard

Falls jemand Interesse an dem Makro hat:


Sub Doppelte_Datensätze_prüfen()
Dim eing
eing = InputBox("Die Spalte eingeben, die sortiert " & (Chr(13)) & "und geprüft werden soll, z.B. ' B ' ", "Spaltenauswahl")
If eing = "" Then
GoTo Fine
End If
On Error GoTo Fin
Columns(eing).Select
Selection.Copy
Columns("A:A").Select
Selection.Insert Shift:=xlToRight
Range("A1").Select
ActiveSheet.Paste
Application.CutCopyMode = False
Cells.Select
Selection.Sort Key1:=Range("A2"), Order1:=xlAscending, Header:=xlYes, _
OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom
Columns("A:A").Select
Selection.FormatConditions.Delete
Selection.FormatConditions.Add Type:=xlExpression, Formula1:= _
"=ZÄHLENWENN(A$1:A1;A2)>=1"
Selection.FormatConditions(1).Font.ColorIndex = 3
Range("A1").Select
GoTo Fin
Fine:
MsgBox "Bitte Spaltenbezeichnung, z.B. ' B ' eingeben!"
Fin:
End Sub

Anzeige

194 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige