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

Suchen und Löschung von Datensätze

Forumthread: Suchen und Löschung von Datensätze

Suchen und Löschung von Datensätze
28.11.2017 08:25:21
Datensätze
Guten Morgen alle Zusammen,
um eine Liste zu filtern und nicht gewünschte Datensätze zu löschen habe ich folgende Code angepasst.
erster schritt: Filterung und Kopie der gefilterten Liste in Spalte B (Funktioniert)
zweiter schritt: Löschen von bestimmte (Strings) bzw. Suchwörter. dies klappt nur wenn der Tabellenblatt aktiv bzw. Sichbar ist (visible).
warum klappt es nicht wenn das Tabellenblatt im Hintergrund ist bzw. ausgeblendet (Hidden) ist.
dazu meine Code:

Public Sub Werke()
Dim var1 As Variant
Worksheets("Maßnahmen").Range("I:I").Copy Worksheets("Werke").Range("A:A")
Worksheets("Werke").Range("A:A").AdvancedFilter Action:=xlFilterCopy, _
copyToRange:=Worksheets("Werke").Range("B1"), unique:=True
Do While Not IsError(var1)
var1 = Worksheets("Werke").Application.Match("*All*", Columns(2), 0)
If Not IsError(var1) Then
Worksheets("Werke").Cells(var1, 2).Delete xlShiftUp
End If
Loop
end sub

vielen Dank für eure Hilfe
Grüße
legac
Anzeige

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

Betreff
Datum
Anwender
Anzeige
AW: Suchen und Löschung von Datensätze
28.11.2017 08:50:22
Datensätze
Hi
weil vor dem Columns(2) in der MATCH-Funktion die Angabe des Tabellenblatts fehlt (Worksheets(...)).
Ohne die Tabellenblattangabe davor beziehen sich die Zellbezüge in VBA (Range, Cells, Columns, Rows) immer auf das aktive Tabellenblatt, bzw wenn der Makrocode in einem Tabellenblattmodul steht, auf das Tabellenblatt des Moduls.
Gruß Daniel
Anzeige
AW: Suchen und Löschung von Datensätze
28.11.2017 09:41:40
Datensätze
Hallo Daniel,
vielen lieben Dank für die schnelle Antwort.
hat super funktioniert. ich habe es total übersehen :)
eine weitere Frage:
ich habe den Fall, dass ich mehrere Suchwörter habe, welche aus meiner Liste gelöscht werden sollen.
gibt es in der Schreibweise der Application.match eine Möglichkeit meherere Suchwörter einzustellen in der Form

var1 = Worksheets("Werke").Application.Match("*All*" or "*Wort1*" or "*wort2*", Columns(2), 0)

oder muss ich halt die While schleife für jeden Suchwort schreiben?
vielen Dank für deine Hilfe
Gruß
Legac
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