Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1092to1096
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Zeile löschen, wenn in Zelle "40477E4-T" vorkommt?

Zeile löschen, wenn in Zelle "40477E4-T" vorkommt?
Selma
Hallo Leute,
wenn in Spalte B in Zelle dies "40800E4-T" enthalten ist, dann soll die Zeile gelöscht werden.
Die letzte Zelle mit Inhalt kann in Spalte A ermittelt werden.
Wie mache ich das per VBA?
Besten Dank im Voraus!
Viele Grüße,
Selma
AW: Zeile löschen, wenn in Zelle "40477E4-T" vorkommt?
06.08.2009 09:44:46
Tino
Hallo,
gerade unten ein ähnliches Makro gehabt, Tabellenname im Code noch anpassen.
Sub Loesche_Wenn_B_40800E4T()
Dim iCalc As Integer
Dim Sh_Tabelle1 As Worksheet

Set Sh_Tabelle1 = Sheets("Tabelle1") 'Deine Tabelle anpassen 

With Application
 iCalc = .Calculation
 .ScreenUpdating = False
 .EnableEvents = False
 .Calculation = xlCalculationManual

    With Sh_Tabelle1.UsedRange
     With .Columns(.Columns.Count).Offset(0, 1)
        '=WENN($B2="40800E4-T";WAHR;ZEILE()) 
        .FormulaR1C1 = "=IF(RC2=""40800E4-T"",TRUE,ROW())"
        Sh_Tabelle1.UsedRange.Sort .Cells(1, 1), xlAscending, , , , , , xlNo
        On Error Resume Next
        .Cells.SpecialCells(xlCellTypeFormulas, 4).EntireRow.Delete
        On Error GoTo 0
        .EntireColumn.Delete
     End With
    End With
    
 .ScreenUpdating = True
 .EnableEvents = True
 .Calculation = iCalc
End With
End Sub
Gruß Tino
Anzeige
AW: Zeile löschen, wenn in Zelle "40477E4-T" vorkommt?
06.08.2009 09:56:31
Selma
Hallo Tino,
bei mir werden die Zeilen nicht gelöscht. Die Tabelle habe ich angepasst.
VG,
Selma
AW: Zeile löschen, wenn in Zelle "40477E4-T" vorkommt?
06.08.2009 10:06:59
Tino
Hallo,
lade mal ein kleines Beispiel.
Gruß Tino
Kleine Änderung
06.08.2009 10:11:52
Erich
Hi Selma,
änder mal

.FormulaR1C1 = "=IF(RC2=""40800E4-T"",TRUE,ROW())"
' in:
.FormulaR1C1 = "=IF(ISERROR(FIND(""40800E4-T"",RC2)),ROW(),TRUE)"
Rückmeldung wäre nett! - Grüße von Erich aus Kamp-Lintfort
AW: Kleine Änderung
06.08.2009 12:24:41
Daniel
HI
ich mag keine Fehler, spricht was gegen:
.FormulaR1C1 = "=IF(CountIF(RC2;(""*40800E4-T*""),TRUE,ROW())"
andererseits, wenn die Datenmenge nicht allzugross ist, könnte man auch einfach den Autofilter entsprechend setzen und dann die Sichtbaren Zeilen löschen.
Das kann man sich auch mit dem Recorder einfach aufzeichnen.
Gruß, Daniel
Anzeige
kann nicht gehen...
06.08.2009 13:08:08
Tino
Hallo,
, setze das Format der Zellen rechts von Deiner Tabelle auf Standard nicht auf Text.
Gruß Tino
AW: kann nicht gehen...
06.08.2009 13:15:06
Tino
Hallo,
oder mach es so.
Sub Loesche_Wenn_B_40800E4T()
Dim iCalc As Integer
Dim Sh_Tabelle1 As Worksheet

Set Sh_Tabelle1 = Sheets("Tabelle2") 'Deine Tabelle anpassen 

With Application
 iCalc = .Calculation
 .ScreenUpdating = False
 .EnableEvents = False
 .Calculation = xlCalculationManual

    With Sh_Tabelle1.UsedRange
     With .Columns(.Columns.Count).Offset(0, 1)
        .Cells.NumberFormat = "General"
        .FormulaR1C1 = "=IF(ISERROR(FIND(""40800E4-T"",RC2)),ROW(),TRUE)"
        Sh_Tabelle1.UsedRange.Sort .Cells(1, 1), xlAscending, , , , , , xlNo
        On Error Resume Next
        .Cells.SpecialCells(xlCellTypeFormulas, 4).EntireRow.Delete
        On Error GoTo 0
        .EntireColumn.Delete
     End With
    End With
    
 .ScreenUpdating = True
 .EnableEvents = True
 .Calculation = iCalc
End With
End Sub
Gruß Tino
Anzeige
AW: Autofilter rulez!!!!
06.08.2009 13:54:59
Daniel
Hi Selma,
warum nicht einfach so:
Sub Makro1()
With ActiveSheet.UsedRange
.AutoFilter Field:=2, Criteria1:="=*40800E4-T*", Operator:=xlAnd
.Offset(1, 0).SpecialCells(xlCellTypeVisible).Delete
.AutoFilter
End With
End Sub
aber für so einfache Makros zu schreiben bist du doch eigentlich lang genug dabei.
der Makrorecorder hilft ja auch dabei.
Gruß, Daniel
AW: Autofilter rulez!!!!
06.08.2009 17:02:30
Selma
Vielen Dank an Alle !
Viele Grüße,
Selma

324 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige