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

Wenn 2. Stelle U dann...

Forumthread: Wenn 2. Stelle U dann...

Wenn 2. Stelle U dann...
20.03.2017 15:13:06
Alex
Servus Zusammen,
ich hab eine Liste in dieser in Spalte E Einträge sind.
Diese sind aufgebaut nach xWxxxxxxxx oder xUxxxxxxx.
Per VBA möchte ich jetzt alle Zeilen löschen, die an 2. Stelle ein U haben.
Meine nicht funktionierende Lösung:
  • 
    Sub löschen()
    Dim zeile As Integer
    Dim Zelleninhalt As Variant
    zeile = 2
    Do While Tabelle1.Cells(zeile, 5)  ""
    Zelleninhalt = Tabelle1.Cells(zeile, 5)
    If Mid(zellinhalt, 2) = "U" Then
    Tabelle1.Cells(zeile, 5).EntireRow.Delete
    Else
    End If
    zeile = zeile + 1
    Loop
    End Sub
    


  • Danke für Hilfe.
    Gruß, Alex
    Anzeige

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

    Betreff
    Datum
    Anwender
    Anzeige
    AW: Wenn 2. Stelle U dann...
    20.03.2017 15:31:21
    EtoPHG
    Alex,
    Bei Excel gut, frage ich mich warum du nicht nach Spalte E benutzerdefiniert filterst mit beginnt mit : ?U und dann alle Zeile selektierst und löschst? Warum VBA?
    Sub löschen()
    Dim zeile As Long
    zeile = 2
    With Tabelle1
    Do While .Cells(zeile, 5)  ""
    If Mid(.Cells(zeile, 5).Text, 2, 1) = "U" Then
    .Cells(zeile, 5).EntireRow.Delete
    Else
    zeile = zeile + 1
    End If
    Loop
    End With
    End Sub
    
    Gruess Hansueli
    Anzeige
    AW: Wenn 2. Stelle U dann...
    20.03.2017 15:54:02
    Daniel
    Hi
    Löschen von Zeilen mit Bedingung geht in Excel am besten so (vor allem bei vielen Zeilen)
    1. in einer Hilfsspalte per Formel alle zu löschenden Zeilen mit 0 und die die stehen bleiben sollen mit der Zeilennummer kennzeichnen.
    bei dir wäre das die Formel: =Wenn(Teil(E2;2;1)="U";0;Zeile())
    2. in die Überschriftenzeile der Hilfsspalte ebenfalls die 0
    3. Daten - Datentools - Duplikate entfernen auf die Tabelle anwenden, mit der Hilfsspalte als Kriterium und der Option "keine Überschrift"
    4. Hilfsspalte löschen
    geht als Makro genauso
    With Tabelle1.UsedRange
    With .Columns(.columns.count + 1)
    .FormulaR1C1 = "=IF(Mid(RC5,2,1)=""U"",0,Row())"
    .Cells(1, 1).Value = 0
    .EntireRow.RemoveDuplicates .column, xlno
    .ClearContents
    end with
    end with
    
    Gruß Daniel
    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