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

Zellen löschen wenn Inhalt durch Zellbezug 0 ist

Zellen löschen wenn Inhalt durch Zellbezug 0 ist
07.02.2006 10:49:25
Thias
Mahlzeit!
Ich habe ein Problem mit einer Lösch-Routine.
Mittels folgenden VBA Code lösche ich Zellen wenn sie keinen Inhalt haben.
ende = Application.ActiveSheet.Range("I65536").End(xlUp).Row
Range("I11", "I" & ende).Select
For Each Zellen In Selection
If Zellen.Text = "" Then
Zellen.Delete Shift:=xlUp
End If
Next
Die durchsuchte Spalte erhält ihre Werte duch Zellbezüge. D.h. wenn ich z.B. in Spalte A einen Wert lösche, wird der Wert der entsprechenden Zeile in Spalte I zu Null.
Um die Werte in Spalte I nicht jedesmal mit 'Entf' per Hand zu löschen, hatte ich obenstehende Routine derart geändert, dass ich nach "0" suchen lasse. Da aber in den Zellen keine echte Null steht, sondern nur ein Zellbezug, hat sich der VBA Code aufgehängt und Excel reagiert nicht mehr.
Wie kann ich denn nach der angezeigten Null suchen lassen und sie löschen, wenn es keine echte Null ist, sondern eine durch einen Zellbezug erzeugte?
Hhhmm - hört sich etwas wirr an, aber ich hoffe irgendjemand kann es nachvollziehen. :-)
Würde mich über einen Tipp sehr freuen!
Gruß Thias

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

Betreff
Datum
Anwender
Anzeige
AW: Zellen löschen wenn Inhalt durch Zellbezug 0 ist
07.02.2006 11:54:20
ChrisL
Hallo Thias
Glaube Excel kann da nicht unterscheiden (Null ist Null). Ggf. müsste man die verknüpfte Zelle (Ursprungszelle) überprüfen.

Sub t()
For Each Zellen In Range("I11", "I" & Range("I65536").End(xlUp).Row)
If Zellen = 0 Then
Zellen.Delete Shift:=xlUp
End If
Next
End Sub

z.B. Verknüpfung kommt aus Spalte B, gelöscht wird aber Spalte I

Sub t()
For Each Zellen In Range("B11", "B" & Range("B65536").End(xlUp).Row)
If Zellen = "" Then
Zellen.Offset(0, 7).Delete Shift:=xlUp
End If
Next
End Sub

Gruss
Chris
Anzeige
AW: Zellen löschen wenn Inhalt durch Zellbezug 0 ist
07.02.2006 12:09:55
Thias
Hi Chris,
vielen Dank für den tollen Ansatz!
Könnte klappen. Werde es auf diesen Weg versuchen und mich evtl. nochmals melden, falls es Probleme gibt.
Thias
AW: Zellen löschen wenn Inhalt durch Zellbezug 0 ist
07.02.2006 12:58:20
Uduuh
Hallo,
wo suchst du denn nach 0? Ich kann nur "" entdecken.
If Zelle.Value=0 then ...
testet das Formelergebnis.
Gruß aus’m Pott
Udo

AW: Zellen löschen wenn Inhalt durch Zellbezug 0 ist
07.02.2006 13:11:49
Thias
Hi Udo,
der VBA Ausschnitt ist der orginale. Hatte diesen dann dahingehend geändert, dass ich statt des
If Zellen.Text = "" Then
ein
If Zellen.Text = "0" Then
eingefügt hatte. Ich wollte den ganzen Code nur nicht nochmal posten wegen dieser kleinen Änderung. Ich dachte, es geht aus dem Text hervor, dass ich diese Änderung versucht hatte, Excel sich dabei aber aufgehangen hat.
Aber der Tipp mit Deinem If Zelle.Value = 0 ist super! Vielen Dank!
Anzeige

305 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige