Excel Formel zu ganze Zeile löschen in der in der Spalte C das Wort Ereignis nicht steht?

Rubezahl2000  27.06.2024, 22:12

Wenn in einer Zeile das Wort "Ergebnis" vorkommt, steht dann nur dieses eine Wort "Ergebnis" in Spalte C?
Oder kann in Spalte C auch mehr Text stehen, z.B. "Vorläufiges Ergebnis"?

Ulli0707 
Beitragsersteller
 27.06.2024, 22:33

Hallo, ja es steht mehr in Spalte C (das Wort kommt vom Teilergebnis).

3 Antworten

Sowas funktioniert nicht mit einer Formel, dafür müsstest du ein Makro programmieren welches Zeilenweise schaut was in Spalte C steht und dann die zeile ggf Löscht.

könnte ungefähr so aussehen:

Sub DeleteRows()
   Dim ws As Worksheet
   Dim lastRow As Long
   Dim i As Long

   Set ws = ThisWorkbook.Sheets("Tabelle1") ' Ändere "Tabelle1" auf den Namen deines Blattes

   ' Letzte zeile mit inhalt in Spalte C finden
   lastRow = ws.Cells(ws.Rows.Count, "C").End(xlUp).Row

   ' Schleife von der Letzten zeile bis zum anfang
   For i = lastRow To 1 Step -1
       ' Check ob "Ergebnis"
       If ws.Cells(i, 3).Value <> "Ergebnis" Then
           ' Spalte löschen wenn ungleich "Ergebnis"
           ws.Rows(i).Delete
       End If
   Next i
End Sub

Ulli0707 
Beitragsersteller
 27.06.2024, 22:29

hat leider noch nicht ganz funktioniert, evtl. deshalb, weil im Text nicht nur "Ergebnis" steht, sondern ".... Ergebnis" (kommt von einem Teilergebnis das ich zuvor über Daten erstellt habe. Möglicherweis kann ja anstelle eines Teilergebnis eine Summe gebildet werden und die Einzelposten dadurch gelöscht werden. Oder muss das Makro detaillierter programmiert werden? Vielen Dank für deine weitere Unterstützung, Gruß Ulli

0
Krabat693  27.06.2024, 22:34
@Ulli0707 Änderung:

Streiche:

If ws.Cells(i, 3).Value <> "Ergebnis" Then

Setze dafür:

If InStr(1, ws.Cells(i, 3).Value, "Ergebnis", vbTextCompare) = 0 Then
1
Ulli0707 
Beitragsersteller
 27.06.2024, 21:54

Super, vielen Dank, ich hatte eh vor ein Makro zu machen und dafür eben die Zeilen in denen das Wort "Ergebnis" nicht vor kommt zu löschen. Ich werde es gleich testen, vielen Dank für die rasche Hilfe. Gruß Ulli

0

Würde nur mit Makro funktionieren. Der code wurde bereits gepostet.

alternativ könntest du über „Suchen/Ersetzen“ (erreichbar unter Steuerung +f) und dann nach dem Suchen was gelöscht werden soll und dann durch „“ ersetzen.

Du könntest einen Filter machen, dann alle filtern, die nicht "Ergebnis" enthalten, dann diese Zeilen markieren und löschen.