Anzeige
Archiv - Navigation
1196to1200
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
Zeile löschen, wenn
Franz
Hallo zusammen,
ich bin auf der Suche nach einem VBA-Code. Er soll einem Bereich von A2 bis Z500 auf doppelte Datensätze prüfen. DAs Problem, und daher hat mich die Suche auch nicht weitergebracht ist, dass immer die Spalten A bis L insgesamt beleuchtet werden müssen.
Kommt eine Zeile mit diesen Daten (Spalte A bis L) doppelt vor, so soll die Zelle in Spalte A rotmarkiert werden. Die Färbung soll aber erst bei dem zweiten oder weiteren Eintrag erfolgen. D.h. der erste Eintrag bleibt unverändert.
Bitte keine bedingte Formatierung.
Vielen Dank!
Gruß
Franz Kupfer

12
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Benutzer
Anzeige
AW: Zeile löschen, wenn
23.01.2011 17:33:37
Josef

Hallo Franz,
probier folgenden Code.

' **********************************************************************
' Modul: Modul1 Typ: Allgemeines Modul
' **********************************************************************

Option Explicit

Sub markiereDoppelte()
  Dim lngLast As Long, rng As Range
  
  On Error GoTo ErrExit
  Application.ScreenUpdating = False
  
  lngLast = Application.Max(2, Cells(Rows.Count, 1).End(xlUp).Row)
  
  Columns(1).Insert
  
  Range("A2").FormulaArray = "=IF(MAX(IF(ROW($2:$" & lngLast & _
    ")>=ROW(),1,MMULT(($B$2:$M$" & lngLast & "=B2:M2)*1,IF(ROW($1:$12),1))))=12,NA(),"""")"
  
  Range("A2:A" & lngLast).FillDown
  
  On Error Resume Next
  Set rng = Columns(1).SpecialCells(xlCellTypeFormulas, xlErrors)
  On Error GoTo ErrExit
  
  If Not rng Is Nothing Then rng.EntireRow.Interior.ColorIndex = 3
  
  Columns(1).Delete
  
  ErrExit:
  Application.ScreenUpdating = True
  Set rng = Nothing
End Sub

Gruß Sepp

Anzeige
AW: Zeile löschen, wenn
23.01.2011 17:46:51
Reinhard
Hallo Franz,
Option Explicit
Sub Farbe()
Dim Zei As Long, Letzte As Long, Formel As String, N As Long
Letzte = Cells(Rows.Count, 1).End(xlUp).Row
Formel = "=""#"""
For N = 65 To 76
Formel = Formel & "&" & Chr(N) & 2 & "&""#"""
Next N
Range("AA2:AA" & Letzte).FormulaLocal = Left(Formel, Len(Formel) - 4)
Range("A1:Z" & Letzte).Interior.ColorIndex = xlNone
For N = 2 To Letzte
If Application.CountIf(Range(Cells(2, 27), Cells(N, 27)), Cells(N, 27).Value) > 1 Then
Range(Cells(N, 1), Cells(N, 26)).Interior.ColorIndex = 3
End If
Next N
Columns(27).ClearContents
End Sub

Gruß
Reinhard
Anzeige
Vielen Dank für die Hilfe - oT
23.01.2011 18:30:26
Franz
@ Sepp Eine Änderung
24.01.2011 08:55:23
Franz
Hallo Sepp,
schreibe Dich an, weil ich Dein Makro in Betrieb habe. Wo müsste ich was ändern, wenn nur auf die Spalten B bis L geprüft werden soll, ob ein Datensatz doppelt vorkommt. Die Spalte A darf nicht mitgeprüft werden.
Vielen Dank!
Gruß
Franz Kupfer
AW: @ Sepp Eine Änderung
24.01.2011 08:57:37
Josef

Hallo Franz,
dazu muss nur der Formelstring angepasst werden.

Range("A2").FormulaArray = "=IF(MAX(IF(ROW($2:$" & lngLast & _
")>=ROW(),1,MMULT(($BC2:$M$" & lngLast & "=C2:M2)*1,IF(ROW($1:$11),1))))=11,NA(),"""")"


Gruß Sepp

Anzeige
Schreibfehler!
24.01.2011 08:58:55
Josef

so stimmt's!

Range("A2").FormulaArray = "=IF(MAX(IF(ROW($2:$" & lngLast & _
")>=ROW(),1,MMULT(($C2:$M$" & lngLast & "=C2:M2)*1,IF(ROW($1:$11),1))))=11,NA(),"""")"
Gruß Sepp

AW: Schreibfehler!
24.01.2011 19:07:24
Franz
Hallo Sepp,
nun werden mir aber auch Zeilen rotmarkiert, die nur einmal vorkommen. Genauer gesagt wird jede Zeile ab Zeile 3 rot.
Fehler oder sitzt das Problem vor meinem PC?
Vielen Dank!
Gruß
Franz Kupfer
Anzeige
Fehlerteufel!
24.01.2011 19:34:04
Josef

Hallo Franz,
der Fehlerteufel ist manchmal ganz schön hartnäckig;-))
So sollte es aber passen.
Range("A2").FormulaArray = "=IF(MAX(IF(ROW($2:$" & lngLast & ")>=ROW(),1,MMULT(($C$2:$M$" & lngLast _
  & "=C2:M2)*1,IF(ROW($1:$11),1))))=11,NA(),"""")"


Gruß Sepp

Anzeige
AW: Fehlerteufel!
24.01.2011 20:22:30
Franz
Ähm, nun wird nix mehr gefärbt. Also auch kein doppelter Datensatz.
AW: Fehlerteufel!
24.01.2011 20:27:36
Josef

Hallo Franz,
dann hat sich aber an deinen Vorgaben etwas grundlegendes geändert.
habe gerade eine Testabelle erstellt und den Cod getestet, funktioniert wie erwartet.

Gruß Sepp

AW: Fehlerteufel!
24.01.2011 20:31:04
Franz
Uih, jetzt funktioniert es auch bei mir. Böse Falle.
Vielen Dank für Deine Hilfe!
Anzeige
Berechnung war auf manuell - oT
24.01.2011 20:33:38
Franz

309 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige