Anzeige
Archiv - Navigation
1888to1892
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

Bedingte Zeilenlöschung Fehler 13

Bedingte Zeilenlöschung Fehler 13
28.06.2022 13:55:21
BriBri
Hallo,
ich habe erst vor kurzen mit VBA angefangen und kenne mich dementsprechend schlecht aus. Im Internet habe ich einen Code gefunden, der mir die Zeile löschen soll, wenn in Spalte D eine Null steht. Ich bekomme immer den Laufzeitfehler 13 und die Ausführung stoppt bei der Zeile If Cells(t, 4).Value = "0" Then
Kann mir jemand helfen, den Fehler los zu werden? In der Spalte D stehen bei mir Text, leere Zellen, Zahlen und Null.

Sub DeleteRows()
Dim lz As Long
Dim t As Long
' Zeilen löschen bei denen in Spalte D der Wert "0" ist
'** Ermittlung der letzten Zeile in Spalte A
lz = Cells(Rows.Count, 1).End(xlUp).Row
'** Durchlauf aller Zeilen
For t = lz To 2 Step -1 'Zählung rückwärts bis Zeile 2
'Abfragen, ob in Spalte 4 der Wert "0" ist
If Cells(t, 4).Value = "0" Then
Rows(t).Delete Shift:=xlUp
End If
Next t
End Sub
LG Brigitte

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

Betreff
Datum
Anwender
Anzeige
AW: Bedingte Zeilenlöschung Fehler 13
28.06.2022 14:07:16
Daniel
Hi
die erste Frage wäre, wann genau kommt der Fehler in der Schleife, schon beim allerersten Umlauf oder erste später?
und wenn er kommt, welchen Wert haben die in dieser Zeile verwendeten Variablen zu Zellen?
Laufzeitfehler 13 könnte beispielsweise auch daher kommen, dass eine der Zellen einen Fehlerwert enthält (#NV, #Wert, #Div/0).
das könnte man aber einfach vermeinden, in dem man nicht Cells(...).value abfragt, sondern Cells(...).Text, zumal du ja sowieso auf den Text "0" prüfst und nicht auf die Zahl 0.
Gruß Daniel
AW: Bedingte Zeilenlöschung Fehler 13
28.06.2022 14:19:40
BriBri
Hi,
danke Daniel, der Hinweis mit #NV hat bereits geholfen. Ich hatte tatsächlich welche drinnen.
Wäre der Laufzeitfehler nicht gekommen, hätte ich auf die Zahl 0 abgefragt?
LG Brigitte
Anzeige
AW: Bedingte Zeilenlöschung Fehler 13
28.06.2022 14:30:21
Daniel
Nein, der Fehler kommt, weil VBA die Fehlerwerte aus den Zellen nicht verarbeiten kann.
das geht nur in speziellen funktionen wie IsError oder VarType.
wo man halt aufpassen muss, ob VBA zwischen Zahl und Text unterscheidet, dh ob es "0" das gleiche ist wie 0 oder nicht.
mit der Abfrage .Text statt .Value gibt es dieses Datentypproblem nicht, dann ist alles Text.
Allerdings braucht .Text bei großen Datenmengen etwas länger als .Value, weil es den Zellwert erstmal mit der Formatierung umwandeln muss.
Gruß Daniel
AW: Bedingte Zeilenlöschung Fehler 13
28.06.2022 19:00:32
BriBri
Danke dir. Wieder etwas dazugelernt.
LG Brigitte

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige