Fehler überspringen

Hallo Zusammen,

ich habe eine Frage zu Makros. Ich habe ein Makro aufgenommen, welches ein bestimmtes Wort sucht und anschliesend die ganze Zeile entfernt. Leider hab ich das Problem, wenn es dieses Wort nicht findet dann bricht er ab und beendet das Makro nicht. Was muss ich machen um das zu vermeinden? Sprich, wenn das gesuchte Wort nicht da ist, das er das überspringt und das Makro fortsetzt?

vielen dank im voraus,
arthur

ich habe eine Frage zu Makros. Ich habe ein Makro aufgenommen,
welches ein bestimmtes Wort sucht und anschliesend die ganze
Zeile entfernt. Leider hab ich das Problem, wenn es dieses
Wort nicht findet dann bricht er ab und beendet das Makro
nicht. Was muss ich machen um das zu vermeinden? Sprich, wenn
das gesuchte Wort nicht da ist, das er das überspringt und das
Makro fortsetzt?

Hi Arthur,
wo ist der Code des Makros und um welches VB geht es?
Gruß
Reinhard

Hallo Reinhard,

vielend dank schon mal für die Antwort.
Also der Teil dieses Codes lautet:

Cells.Find(What:=„software“).Activate
Range(Selection, Selection.End(xlToRight)).Select
Selection.EntireRow.Delete

Wie gesagt, ich suche nach dem Wort „Software“ und wenn er das findet soll er die ganze Zeile löschen.
Das problem beginnt, wenn das Wort nicht existiert. Dann bricht er ab. Was kann ich da machen?
vielen dank im voraus,
arthur

Hallo Arthur,

wie wärs mit sowas wie

dim zellen as range
set zellen = Cells.Find(What:=„software“)
if not zellen is Nothing then
zellen.Activate
Range(Selection, Selection.End(xlToRight)).Select
Selection.EntireRow.Delete
end if

Ich habs nicht getestet aber ich glaub so oder so ähnlich könnte das gehen.

Gruß, Andreas

[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]

Tausend Dank,

es funktioniert!
ich habe auch gleich noch eine Frage:
ich möchte automatisch eine Tabelle löschen, das mach ich mit diesem makro:
Sheets(„Cost Summary“).Select
ActiveWindow.SelectedSheets.Delete
Leider erst eine Meldung, ob ich das wirklich löschen möchte, die ich erst bestättigen muss befor das Makro weiter macht.
Kann ich diese Bestättigung irgendwie umgehen?
gruß,
arthur

die online-hilfe ist dein freund
hallo

hier ein auszug aus der excel-vba-online-hilfe

Dieses Beispiel löscht Sheet3 der aktiven Arbeitsmappe, ohne ein Dialogfeld zur Bestätigung anzuzeigen.

Application.DisplayAlerts = False
Worksheets(„Sheet3“).Delete
Application.DisplayAlerts = True

lg
erwin

Hallo Erwin,

vielen Dank für die Hilfe, hat wunderbar geklappt.
Du hast recht, ich muss mich wahrscheinlich mehr mit der Sache beschäftigen. Ich habe mir schon ein Lernhilfe für VBA gefunden.
Grüße,
arthur

Cells.Find(What:=„software“).Activate
Range(Selection, Selection.End(xlToRight)).Select
Selection.EntireRow.Delete

Wie gesagt, ich suche nach dem Wort „Software“ und wenn er das
findet soll er die ganze Zeile löschen.
Das problem beginnt, wenn das Wort nicht existiert. Dann
bricht er ab. Was kann ich da machen?
vielen dank im voraus,

Hi Arthur,

bei Range(Selection, Selection.End(xlToRight)).Select wird mir schwindelig vor lauter Select, das Zeugs braucht man nur selten.

Und, bei „Find“ kann man per Parameter einstellen ob Klein/Großschreibung eine Rolle spielt.

probiers mal so:

Option Explicit

Sub tt()
Dim zellen As Range
Set zellen = Cells.Find(What:=„software“)
If Not zellen Is Nothing Then zellen.EntireRow.Delete
End Sub

Gruß
Reinhard