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

Leere Zellen ignorieren

Leere Zellen ignorieren
23.08.2003 10:34:16
Peter
Hallo,
mit unten stehendem code (den ich auf dieser seite gefunden habe) vergleiche ich zwei tabellenblätter und lasse die unterschiede markieren. Jede Zeile stellt einen Datensatz dar, es können sich Zellinhalte und Zellfarben ändern, sowie Datensätze an beliebiger Stelle gelöscht sein oder neu eingefügt. Soweit funktioniert das auch ganz gut.
Nun der Haken:
Kommt in einer oder beiden Tabellen eine Leerzeile vor, wird der Vergleich abgebrochen. Um das zu umgehen kann ich entweder vorher die Leerzeilen löschen oder mit einem beliebigen Wert ersetzen lassen.
Da ich aber an den Quelltabellen so wenig Änderungen wie möglich vornehmen will (am besten gar keine), suche ich nach einer Möglichkeit, die Leerzeilen einfach zu ignorieren/überspringen.
Hier der code:

Sub Vergleich()
Dim rng As Range
Dim lRow As Long, lRowT As Long
Dim iCol As Integer
Dim bln As Boolean
Set rng = Worksheets("PROTOKOLL_ALT").Range("A1").CurrentRegion
For lRow = 1 To Range("A1").CurrentRegion.Rows.Count
bln = True
For lRowT = 1 To rng.Rows.Count
For iCol = 1 To 9
If Cells(lRow, iCol) <> rng(lRowT, iCol) Or Cells(lRow, 1).Interior.ColorIndex <> rng(lRowT, 1).Interior.ColorIndex Then
bln = False
Exit For
End If
Next iCol
If bln = True Then
Exit For
ElseIf lRowT < rng.Rows.Count Then
bln = True
End If
Next lRowT
If bln = False Then
Range(Cells(lRow, 10), Cells(lRow, 10)).Interior.ColorIndex = 3
End If
Next lRow
End Sub

1
Beitrag zum Forumthread
Beitrag zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Leere Zellen ignorieren
23.08.2003 10:44:59
sergiesam
Hi,
wenn du sicher immer nur 1 zeile dazwischen hast, kannst du eine Schleife durchlaufen lassen, bis 2 Leerzeilen auftreten:
do until Activecell = "" and activecell.offset(1,0) = ""
...
loop
Sam

Anzeige

329 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige