Mit Makro ein bestimmtes Wort suchen

Folgendes Problem:
Ich möchte, dass ein Makro die Zeilen nach einem bestimmten Wort durchsucht. Wenn das Wort gefunden wurde, soll

  1. die Zeile gelöscht werden in der das Wort vorkommt,
  2. 8 Zeilen darunter gelöscht werden

Beispiel: Das Wort Flughafen steht in Zeile 10 nun sollen also die Zeilen 10 bis 18 gelöscht werden.

Vielleicht könnt Ihr mir weiterhelfen.
Bedanke mich im Voraus und wünsche einen angenehmen Tag.

Liebe Grüße

Um welches Programm handelt es sicht?

Um welches Programm handelt es sicht?

Sorry, um Excel 2007.
Folgende Schwierigkeit kommt noch hinzu,
Ich arbeite in einer Tabelle mit ca. 20.000 Zeilen und alle 40 - 50 Zeilen muss oben beschriebene Aktion durchgeführt werden.

Gruß

Segro

Also folgender Code sollte nach dem Wort test suchen und anschließend die aktive Zeile, in dem das Wort gefunden wird, löschen. Danach rückt die nächste Zeile nach und die For Schleife löscht weitere 7 mal die nachgerückte Zeile.

Dim i As Integer

Cells.Find(What:=„test“, After:=ActiveCell, LookIn:=xlFormulas, _
LookAt:=xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext, _
MatchCase:=False, SearchFormat:=False).Activate
For i = 0 To 7
Rows(ActiveCell.Row).Select
Selection.Delete Shift:=xlUp
Next

Der Code ist nicht schlecht, vielen Dank,aber wie oben schon erwähnt habe ich 20.000 Zeilen vor mir und alle 40 - 50 Zeilen muss der Code wiederholt werden. Irgendwie müsste da eine Schleife rein.

Viele Grüße

Segro

Diese Schleife sucht nun solange bis das wort nicht mehr gefunden wird.

Sub Makro1()

’ Makro1 Makro

Dim wort As String
'hier nun das zu suchende wort eingeben
wort = „Test“

Do While zeilen_loeschen(wort) = wort
Loop

MsgBox („FERTIG“)

End Sub

Function zeilen_loeschen(wort As String)
On Error GoTo errorhandler

Dim i As Integer

Cells.Find(What:=wort, After:=ActiveCell, LookIn:=xlFormulas, _
LookAt:=xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext, _
MatchCase:=False, SearchFormat:=False).Activate

For i = 0 To 7
Rows(ActiveCell.Row).Select
Selection.Delete Shift:=xlUp
Next

zeilen_loeschen = wort

Exit Function
errorhandler:
If Err.Number = 91 Then 'Programm findet das gesuchte Wort nicht mehr
zeilen_loeschen = „ende“
Else
MsgBox (Err.Number & " " & Err.Description)
End If
End Function

Daumen hoch!!! That’s it!!!

Vielen, Vielen Dank
LG

Segro

Hallo Segro Mota,

abgesehen davon, dass in deiner Anfrage wichtigen Details fehlen, kann ich dir wahrscheinlich nicht weiter helfen.

Viele Grüße
Stefan