Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: Zeile löschen wenn Bezug zu bestimmtem Reiter

Zeile löschen wenn Bezug zu bestimmtem Reiter
06.12.2017 14:53:40
arek
Hallo zusammen,
ich habe folgendes Makro programmiert, mit dem die komplette Zeile gelöscht wird, falls in Spalte A irgendwo "closed" bzw. "stopped" erscheint. Jetzt würde ich dieses Makro gerne ändern und zwar soll die komplette Zeile gelöscht werden, falls in Spalte A irgendwo eine Formel steht, die auf den Reiter "Closed_Stopped" verweist, also z.B. "=Closed_Stopped!L10". Also immer wenn dieser Reiter in der Formel auftaucht, soll die Zeile entsprechend gelöscht werden. Ist das möglich?
Vielen Dank im Voraus!
Private Sub Worksheet_Change(ByVal Target As Range)
Dim lngRow As Long
If Not Intersect(Target, Columns(1)) Is Nothing Then
With Application
.EnableEvents = False
.ScreenUpdating = False
End With
For lngRow = Cells(Rows.Count, 1).End(xlUp).Row To 1 Step -1
With Cells(lngRow, 1)
If .Value = "closed" Or .Value = "stopped" Then Rows(lngRow).Delete
End With
Next lngRow
With Application
.ScreenUpdating = True
.EnableEvents = True
End With
Application.CalculateFullRebuild
End If
End Sub

Anzeige

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

Betreff
Datum
Anwender
Anzeige
AW: Zeile löschen wenn Bezug zu bestimmtem Reiter
06.12.2017 16:17:26
Michael
Hallo!
Das sollte schnelle Abhilfe bringen:
Private Sub Worksheet_Change(ByVal Target As Range)
Dim lngRow As Long
If Not Intersect(Target, Columns(1)) Is Nothing Then
With Application
.EnableEvents = False
.ScreenUpdating = False
End With
For lngRow = Cells(Rows.Count, 1).End(xlUp).Row To 1 Step -1
If Range(Cells(lngRow, 1).Address).HasFormula Then
If InStr(1, Cells(lngRow, 1).FormulaLocal, "closed", vbTextCompare) > 0 Or _
InStr(1, Cells(lngRow, 1).FormulaLocal, "stopped", vbTextCompare) > 0 Then
Rows(lngRow).Delete
End If
End If
Next lngRow
With Application
.ScreenUpdating = True
.EnableEvents = True
End With
Application.CalculateFullRebuild
End If
End Sub
LG
Michael
Anzeige
AW: Zeile löschen wenn Bezug zu bestimmtem Reiter
07.12.2017 01:32:04
Daniel
Hi
probier mal das:
Sub test()
With ActiveSheet.Columns(1)
.Replace "*Closed_Stopped*", True, xlWhole
.SpecialCells(xlCellTypeConstants, 4).EntireRow.Delete
End With
End Sub
Gruß Daniel
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige