Filtern und Zeile löschen
#1
Hallo Leute, ich hab da ein Problem mit Filtern und Zeile löschen, ich hab zwar eine Code der funktioniert, wenn das Kriterium und die Liste in der gelöscht werden soll, zusammen in einen Tabellenblatt steht.
nun möchte ich aber das Suchkriterium auf Tabellenblatt 1 eingeben und die Zeile soll dann in Tabellenblatt 2 aus einer intelligenten Tabelle gelöscht werden, das bekomm ich nicht hin.
Bitte um Hilfe. in dem Tabellenblatt ListeBuchung hab ich mein Problem nochmals dagestellt.
Dank vorab
g Jürgen


Angehängte Dateien
.xlsm   Mappe1.xlsm (Größe: 38,24 KB / Downloads: 7)
Antworten Top
#2
Hallo Jürgen,

Code:
Sub Test()
  On Error Resume Next
  With Tabelle1.ListObjects(1).DataBodyRange
    .Rows(Application.Match(Range("A3").Value, .Columns(1), 0)).Delete
  End With
  If Err Then
    MsgBox "Die ID wurde nicht gefunden."
  End If
  On Error GoTo 0
End Sub

Gruß, Uwe
Antworten Top
#3
Hallo Uwe,
vielen Dank, passt perfekt

hallo Uwe,

Kleine Änderung falls jemand so was braucht, und jetzt mitgelesen hat.

Uwes Codezeile:   .Rows(Application.Match(Range("K7").Value, .Columns(1), 0)).Delete     
 
                           kommt immer Abfrage," soll die ganze Blattzeile gelöscht werden."

Änderung:            .Rows(Application.Match(Range("K7").Value, .Columns(1), 0)).EntireRow.Delete      

                           Jetzt wird die ganze Zeile in der Tabelle gelöscht.

Nochmals Dank an dich Uwe

Gruß Jürgen
Antworten Top
#4
Hallo Jürgen,
 
 .Rows().Delete ist völlig ausreichend.
 .EntireRow.Delete macht Sinn, wenn neben einer Zielzelle die dazugehörige Zeile gelöscht werden soll.
 
Application.Match liefert eine Zahl oder einen Fehler2015 (welcher nur passiert, wenn in der Zelle keine Nummer eigegeben wurde) und demzufolge wird .Rows(Zeilennummer).Delete die Zeile gelöscht oder ein Fehler ausgelöst.
 
Gruß Uwe
Antworten Top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste