Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1960to1964
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

VBA - Filter Kriterium

VBA - Filter Kriterium
18.01.2024 10:39:43
Velo
Hallo liebes Forum,

ich will im folgendem Code, bestimmte Zeilen aus Tabelle1 in die aktive Tabelle kopieren (Bedingungen sind in Spalte B und M), leider bekomme ich beim Ausführen den Laufzeitfehler 1004: "Die AutoFilter-Methode des Range Objektes konnte nicht ausgeführt werden".

Sub BSP()


Dim Aktiv As Worksheet
Set Aktiv = ActiveSheet

Worksheets("Tabelle1").Range("B1:M1").Copy _
Destination:=Aktiv.Range("a2:L2") 'Überschrift aus "Tabelle1" kopieren

Dim Inhalt As String 'Bereich aus dem kopiert wird
Inhalt = "B2:M1048576"
Dim Ziel As String 'Ziel Bereich
Ziel = "A3:L1048576"

Dim rng As Range
Set rng = Worksheets("Tabelle1").Range(Inhalt)
rng.AutoFilter Field:=1, Criteria1:="Nein" 'Filtern nach "Nein"
rng.AutoFilter Field:=12, Criteria1:="Ja" 'Filtern nach "Ja"
rng.Copy Destination:=Aktiv.Range(Ziel)
Aktiv.Columns("A:K").EntireColumn.AutoFit 'formatieren
rng.AutoFilter 'Filter ausschalten

End Sub


Der Fehler wird im Debugger bei folgender Zeile angezeigt:
rng.AutoFilter Field:=1, Criteria1:="Nein" 'Filtern nach "Nein"

Woran kann das liegen? Ist die Methode mit AutoFilter überhaupt richtig angewendet?

Bin leider in VBA nicht ganz so begabt und freue mich auf jede Hilfe :)

Danke schonmal im Voraus und Grüße
Velo

3
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: VBA - Filter Kriterium
18.01.2024 10:54:29
MCO
Moin!

Das funktioniert so nicht mit dem Range anwählen.
Besser du definierst den Rangebereich und arbeitest damit.
Sub BSP()


Dim Aktiv As Worksheet
Set Aktiv = ActiveSheet

Worksheets("Tabelle1").Range("B1:M1").Copy Aktiv.Range("a2:L2") 'Überschrift aus "Tabelle1" kopieren

Dim Ziel As Range 'Ziel Bereich
Set Ziel = Aktiv.Range("A3")

Dim rng As Range
Set rng = Worksheets("Tabelle1").Range("B2:M1048576")
With rng
.AutoFilter Field:=1, Criteria1:="Nein" 'Filtern nach "Nein"
.AutoFilter Field:=12, Criteria1:="Ja" 'Filtern nach "Ja"
.Copy Destination:=Ziel
.AutoFilter 'Filter ausschalten
End With

Aktiv.Columns("A:K").EntireColumn.AutoFit 'formatieren
End Sub

Auch den Einfügebereich so groß zu wählen kann nicht funktionieren, da ja dein gefilterter Bereich nicht die gleiche Größe haben kann.

Probier es mal aus.

Gruß MCO
Anzeige
AW: VBA - Filter Kriterium
18.01.2024 13:20:58
Velo
Hallo MCO,

erstmal danke für die Hilfe .
Leider funktioniert es auf diesem Weg auch nicht - bekomme wieder den gleichen Fehlercode.

Kann es daran liegen, dass Tabelle1 mit Power Query erstellt wird oder ist das VBA egal?

Viele Grüße
Velo
AW: VBA - Filter Kriterium
18.01.2024 16:26:33
MCO
Das ist VBA egal.

Lad doch die Datei mal hoch, sonst kann man viel spekulieren.

Gruß, MCO

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige