Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1864to1868
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
Inhaltsverzeichnis

Laufzeitfehler '1004'

Laufzeitfehler '1004'
18.01.2022 15:21:18
Tobias
Hallo,
in einer Tabelle sollen jeweils die Zeilenpaare miteinander verglichen werden, die denselben Eintrag in der Spalte E haben.
Stimmen die Einträge dort in den Spalten nicht überein, werden die betreffenden Zellen gelb gefärbt.
Mit diesem Makro funktioniert es, aber nur, wenn es tatsächlich in jedem Zeilenpaar auch mindestens ein unterschiedliches Zellenpaar gibt.

Sub Vergleichsmakro()
Dim myRng As Range
With ActiveSheet
For Each myRng In .Range(.Cells(2, 5), .Cells(Rows.Count, 5).End(xlUp))
If myRng = myRng.Offset(-1) Then
myRng.Select
Selection.Offset(-1).Select
ActiveCell.EntireRow.Select
Selection.Resize(2).Select
Selection.ColumnDifferences(ActiveCell).Select
With Selection.Interior
.Pattern = xlSolid
.ColorIndex = 6
End With
Selection.Offset(-1).Select
With Selection.Interior
.Pattern = xlSolid
.ColorIndex = 6
End With
End If
Next myRng
End With
End Sub

Finden sich allerdings Zeilenpaare, die ganz übereinstimmen, fliegt das Makro aus der Kurve anstatt zum nächsten Zeilenpaar weiterzugehen:
Laufzeitfehler '1004': Keine Zellen gefunden.
Beispieldatei: https://www.herber.de/bbs/user/150486.xlsm
Hat jemand eine Idee, wie man dieses Problem löst?
Vielen Dank und Grüße
Tobias

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

Betreff
Datum
Anwender
Anzeige
AW: Laufzeitfehler '1004'
18.01.2022 15:55:57
Dieter
Hallo Tobias,
das sollte sich mit dem folgenden Programm machen lassen

Sub Vergleichsmakro_Neu()
Dim letzteSpalte As Long
Dim letzteZeile As Long
Dim spalte As Long
Dim ws As Worksheet
Dim zeile As Long
Set ws = ThisWorkbook.Worksheets("Ausgangstabelle")
letzteZeile = ws.Cells(ws.Rows.Count, "E").End(xlUp).Row
If letzteZeile  ws.Cells(zeile + 1, spalte) Then
ws.Cells(zeile, spalte).Resize(2).Interior.ColorIndex = 6 ' gelb
End If
Next spalte
End If
Next zeile
End Sub
Viele Grüße
Dieter
AW: Laufzeitfehler '1004'
18.01.2022 16:14:53
Tobias
Hallo Dieter,
wow - klappt perfekt!
Vielen Dank und schöne Grüße
Tobias
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige