Herbers Excel-Forum - das Archiv
VBA-Code ändern - suchen und Zeile löschen
Informationen und Beispiele zu den hier genannten Dialog-Elementen:
Betrifft: VBA-Code ändern - suchen und Zeile löschen
von: Markus M
Geschrieben am: 24.02.2005 13:02:29
Hallo,
Kann mir jemand bei der Änderung dieses VBA-Codes weiterhelfen.
Konkret möchte ich, dass nicht nur die Zelle, in der der Suchtext gefunden wird, gelöscht wird, sonder dass die komplette Zeile in dieser der steht markiert und dessen Inhalt (es befinden sich Inhalte von Spalte A – I) komplett gelöscht wird.
Hier der bisherige VBA-Code:
Sub Suchbegriff_ganze_Zeile_löschen()
On Error Resume Next
Dim Bezeichnung$, Zelle
Application.ScreenUpdating = False
Bezeichnung = InputBox("zu löschenden Begriff eingeben:", "Ganze Zeile löschen")
For Each Zelle In ActiveSheet.UsedRange.Cells
Cells.Find(What:=Bezeichnung, After:=ActiveCell, LookIn:=xlFormulas, LookAt:= _
xlPart, SearchOrder:=xlByColumns, SearchDirection:=xlNext).Rows.ClearContents
Next
Application.ScreenUpdating = True
End Sub
Schon jetzt vielen Dank
Gruß
Markus
Betrifft: AW: VBA-Code ändern - suchen und Zeile löschen
von: Beni
Geschrieben am: 24.02.2005 13:14:01
Hallo Markus,
Gruss Beni
Sub Suchbegriff_ganze_Zeile_löschen()
On Error Resume Next
Dim Bezeichnung$, Zelle
Application.ScreenUpdating = False
Bezeichnung = InputBox("zu löschenden Begriff eingeben:", "Ganze Zeile löschen")
For Each Zelle In ActiveSheet.UsedRange.Cells
Set C = Cells.Find(What:=Bezeichnung, LookIn:=xlFormulas, LookAt:=xlPart)
If Not C Is Nothing Then
r = C(1, 1).Row
Range(Cells(r, 1), Cells(r, 9)).Clear
End If
Next
Application.ScreenUpdating = True
End Sub
Betrifft: Super - danke!!!
von: Markus M
Geschrieben am: 24.02.2005 13:45:42
Genial, danke Euch zwei.
Funktioniert einwandfrei!!!
Betrifft: AW: VBA-Code ändern - suchen und Zeile löschen
von: Harald E
Geschrieben am: 24.02.2005 13:14:55
Hallo Markus,
ein Lösungsansatz per Schleife
Sub Suchbegriff_ganze_Zeile_löschen()
On Error Resume Next
Dim Bezeichnung$
Application.ScreenUpdating = False
Bezeichnung = InputBox("zu löschenden Begriff eingeben:", "Ganze Zeile löschen")
For i = Cells(Rows.Count, 1).End(xlUp).Row To 1 Step -1
If Cells(i, 1).Value = Bezeichnung Then
Rows(i).Delete
End If
Next i
End Sub
Gruß
Harald
Betrifft: Super - danke
von: Markus M
Geschrieben am: 24.02.2005 13:47:29
Oh, wollte die Antwort auf Euch beide beziehen.
Auch Dir vielen Dank, funktioniert super.
Gruß
Makus
Betrifft: Danke für die Rückmeldung :-) o.T.
von: Harald E
Geschrieben am: 24.02.2005 14:02:07