Live-Forum - Die aktuellen Beiträge
Datum
Titel
28.03.2024 21:12:36
28.03.2024 18:31:49
Anzeige
Archiv - Navigation
1100to1104
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

von Bedinung abhäniges Löschen von Zeilen

von Bedinung abhäniges Löschen von Zeilen
Bedinung
Guten Morgen,
habe ein Problem mit dem automatisierten Löschen von Zeilen:
In einer Tabelle möchte ich alle Zeilen gelöscht bekommen, in denen die Spalte B leer ist oder den Eintrag "Oe-Summe" enthält. Der Versuch, eine entsprechende Wenn-Funktion einzubauen (wenn$b2="oe-Summe";"";c2) führt beim Versuch, diese über die ganze Tabelle zu ziehen zur Anzeige "Zirkelbezug".
viele Grüße
Gorkij
AW: von Bedinung abhäniges Löschen von Zeilen
15.09.2009 13:02:34
Bedinung
Hi Gunter,
o.k., es passiert genau das, was ich auch in meiner Tabelle erreichen wollte, nur wie krieg' ioch diese Funktion jetzt in meine Mappe?
AW: von Bedinung abhäniges Löschen von Zeilen
15.09.2009 13:08:07
Bedinung
Also, du musst dir zuerst einen Command Button auf deiner Tabelle erstellen. Mit einem Rechtsklick und "Code anzeigen" kommst du auf die VBA-Ebene und dort fügst du diesen Code ein.
Private Sub CommandButton1_Click()
Dim z As Long, lZ As Long
lZ = Sheets("Tabelle1").Cells(65536, 2).End(xlUp).Row
For z = lZ To 1 Step -1
With Sheets("Tabelle1")
If .Cells(z, 2) = "" Or .Cells(z, 2) = "oe-Summe" Then .Rows(z).Delete
End With
Next
End Sub

Dann sollte das schon funktionieren.
Gunter
Anzeige
bedingtes Löschen von Zeilen
15.09.2009 13:29:54
Zeilen
Hi zusammen,
( With ) Sheets("Tabelle1") ist überflüssig, wenn der Code im Modul dieses Tabellenblatts steht.
Mit dem folgenden Code flackerts etwas weniger,
weil das Löschen am Schluss auf einen Schlag erfolgt:

Private Sub CommandButton1_Click()
Dim rngC As Range, rngDel As Range
For Each rngC In Cells(1, 2).Resize(Cells(Rows.Count, 2).End(xlUp).Row)
If rngC = "" Or rngC = "oe-Summe" Then
If rngDel Is Nothing Then
Set rngDel = rngC
Else
Set rngDel = Union(rngDel, rngC)
End If
End If
Next rngC
If Not rngDel Is Nothing Then rngDel.EntireRow.Delete
End Sub
Rückmeldung wäre nett! - Grüße von Erich aus Kamp-Lintfort
Anzeige
AW: bedingtes Löschen von Zeilen
15.09.2009 14:08:20
Zeilen
Sorry, aber ich weiß zwar, wie man eine Schaltfläche herstellt, aber was muss ich tun, damit dieser Button den eingefügten VBA-Code ausführt?
Brauche halt noch Anleitung in Schreibschrift
AW: bedingtes Löschen von Zeilen
15.09.2009 14:13:31
Zeilen
Du darfst keine Schaltfläche herstellen sondern verwende den CommandButton unter ActiveX Steuerelemente. Diesen mit der rechten Maustaste anklicken und Code eingeben auswählen.
AW: bedingtes Löschen von Zeilen
15.09.2009 14:34:25
Zeilen
Steuerelemente gefunden, Button eingerichtet - und dennoch einen Weg gefunden, damit es nicht funktioniert. Habe die Datei mal angefügt, vielleicht ist da ja zu erkennen, wo der Feher liegt.
Gorkij

Die Datei https://www.herber.de/bbs/user/64429.xls wurde aus Datenschutzgründen gelöscht


Anzeige
AW: bedingtes Löschen von Zeilen
15.09.2009 14:59:25
Zeilen
Das muss dann natürlich angepasst werden
Private Sub CommandButton1_Click()
Dim z As Long, lZ As Long
Application.ScreenUpdating = False
lZ = Sheets("Controlling").Cells(65536, 3).End(xlUp).Row
For z = lZ To 1 Step -1
With Sheets("Controlling")
If .Cells(z, 3) = "" Or .Cells(z, 3) = "oe-Summe" Then .Rows(z).Delete
End With
Next
Application.ScreenUpdating = True
End Sub

AW: bedingtes Löschen von Zeilen
15.09.2009 15:14:39
Zeilen
und wenn "oe-Summe" in der Tabelle "Oe-Summe:" heisst dann muss das so aussehen
Private Sub CommandButton1_Click()
Dim z As Long, lZ As Long
Application.ScreenUpdating = False
lZ = Sheets("Controlling").Cells(65536, 3).End(xlUp).Row
For z = lZ To 1 Step -1
With Sheets("Controlling")
If .Cells(z, 3) = "" Or .Cells(z, 3) = "Oe-Summe:" Then .Rows(z).Delete
End With
Next
Application.ScreenUpdating = True
End Sub

Anzeige
AW: bedingtes Löschen von Zeilen
15.09.2009 15:22:17
Zeilen
DANKE!!
Es Funzzt - musste nur noch "oe-summe" in d"Oe-Summe:" ändern, den Großbuchstaben hatte ich zwar schnell als mögliche Fehelrquelle erkenant, aber dann war da noch dieser schäbige Doppelpunkt.
nochmals herzlichen Dank.
AW: bedingtes Löschen von Zeilen
15.09.2009 15:30:48
Zeilen
Gern geschehen.
OT @Gorki : Anleitung in "Handschrift"
15.09.2009 14:41:19
NoNet

Hallo Gorki,
Der Ausdruck "Anleitung in Handschrift" ist gut - allerdings für den Antwortenden aufwändiger zu erstellen.
Bleibt zu hoffen, dass Du diese "Handschrift" dann auch gut lesen kannst ;-)
Gruß, NoNet

Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige