Excel VBA: Erweiterte Filter mit mehreren Kriterien in einem Bereich (5 Methoden) -

  • Teile Das
Hugh West

Wenn Sie mit großen Datenmengen arbeiten und mehrere Filter auf einmal setzen müssen, Erweiterte Filterung in Excel Sie kann auch dazu verwendet werden, Ihre Daten zu bereinigen, indem Kopien entfernt werden. Während der Anwendung der Erweiterte Filter die VBA In diesem Tutorial werden wir Ihnen zeigen, wie Sie den VBA Erweiterter Filter für mehrere Kriterien im Bereich Excel .

Download Arbeitsbuch Praxis

Laden Sie dieses Übungsheft herunter, um zu üben, während Sie diesen Artikel lesen.

VBA Erweiterter Filter.xlsm

5 wirksame Methoden für VBA Advanced Filter mit mehreren Kriterien in einem Bereich in Excel

In den folgenden Abschnitten werden wir Folgendes erörtern 5 zu verwendende Methoden VBA Erweiterter Filter Zunächst müssen Sie vielleicht die Syntax des Befehls VBA Erweiterter Filter .

VBA Erweiterte Filter-Syntax:

  • AdvancedFilter: bezieht sich auf ein Bereichsobjekt. Sie können den Bereich festlegen, in dem Sie den Filter anwenden möchten.
  • Aktion: ist ein erforderliches Argument, das zwei Optionen hat, xlFilterInPlace oder xlFilterCopy . xlFilterInPlace wird verwendet, um den Wert an der Stelle zu filtern, an der sich der Datensatz befindet. xlFilterCopy wird verwendet, um den Filterwert an einer anderen gewünschten Stelle zu erhalten.
  • KriterienBereich: steht für die Kriterien, nach denen der Wert gefiltert werden soll.
  • CopyToRange: ist der Ort, an dem Sie Ihre Filterergebnisse speichern werden.
  • Einzigartig: ist ein optionales Argument; verwenden Sie die Wahr Argument, um nur die eindeutigen Werte zu filtern. Andernfalls wird es standardmäßig als Falsch .

In der folgenden Abbildung wird ein Beispieldatensatz bereitgestellt, auf den alle gewünschten Filter angewendet werden können.

1. erweiterte VBA-Filter für die OR-Kriterien in einem Bereich in Excel anwenden

Bei der ersten Methode werden wir die OR Kriterien unter Verwendung der VBA Erweiterter Filter Angenommen, wir wollen die Daten nach dem Produktnamen filtern. Cookies und Schokolade Zur Anwendung der OR Kriterien sollten Sie den Wert in verschiedenen Zeilen platzieren. Befolgen Sie die unten beschriebenen Schritte, um diese Aufgabe zu erledigen.

Schritt 1:

  • Presse Alt + F11 zum Öffnen des VBA-Makro .
  • Klicken Sie auf das Einfügen.
  • Wählen Sie die Modul.

Schritt 2:

  • Dann fügen Sie Folgendes ein VBA Code zur Anwendung der OR.
 Sub Apply_VBA_Advanced_Filter_for_OR_Criteria() 'Declare Variable for dataset range and for criteria range Dim Dataset_Rng As Range Dim Criteria_Rng As Range 'Legen Sie die Position und den Bereich des Datensatzbereichs und des Kriterienbereichs fest Set Dataset_Rng = Sheets("Sheet1").Range("B4:E11") Set Criteria_Rng = Sheets("Sheet1").Range("B14:E16") 'Wenden Sie den erweiterten Filter an, um den Datensatz anhand der Kriterien zu filternDataset_Rng.AdvancedFilter Action:=xlFilterInPlace, CriteriaRange:=Criteria_Rng End Sub 

Schritt 3:

  • Speichern Sie dann das Programm und drücken Sie F5 zu laufen.
  • Daher erhalten Sie die gefilterten Ergebnisse wie in der folgenden Abbildung dargestellt.

Anmerkungen. Um den Prozess umzukehren oder die gesamte Filterpaste zu entfernen und die VBA Programm.

 Sub Remove_All_Filter() On Error Resume Next 'Befehl zum Entfernen aller Filter, um den vorherigen Datensatz anzuzeigen ActiveSheet.ShowAllData End Sub 

  • Als Ergebnis erhalten Sie die vorherige Version Ihres Datensatzes.

Lesen Sie mehr: Excel VBA Beispiele für erweiterte Filter mit Kriterien (6 Kriterien)

2. erweiterte VBA-Filter für die UND-Kriterien in einem Bereich in Excel durchführen

Ähnlich wie bei der vorherigen Methode führen wir nun die VBA Erweiterter Filter für die UND Nehmen wir an, wir wollen wissen, welche Cookies den Preis von $0.65 wie in der Abbildung unten gezeigt. Für die Anwendung der OR Kriterien, sollten Sie den Wert in verschiedenen Spalten platzieren. Um die UND Kriterien, befolgen Sie die nachstehenden Anweisungen.

Schritt 1:

  • Zum Öffnen VBA-Makro , drücken Alt + F11
  • Nach dem Öffnen des VBA-Makro fügen Sie Folgendes ein VBA Codes in einem neuen Modul.
 Sub Apply_VBA_Advanced_Filter_for_AND_Criteria() 'Declare Variable for dataset range and for criteria range Dim Dataset_Rng As Range Dim Criteria_Rng As Range 'Legen Sie die Position und den Bereich des Datensatzbereichs und des Kriterienbereichs fest Set Dataset_Rng = Sheets("Sheet2").Range("B4:E11") Set Criteria_Rng = Sheets("Sheet2").Range("B14:E15") 'Wenden Sie den erweiterten Filter an, um den Datensatz anhand der Kriterien zu filternDataset_Rng.AdvancedFilter Action:=xlFilterInPlace, CriteriaRange:=Criteria_Rng End Sub 

Schritt 2:

  • Presse F5 um das Programm zu starten, nachdem Sie es gespeichert haben.
  • Schließlich erhalten Sie die gefilterten Ergebnisse.

Lesen Sie mehr: VBA zum Kopieren von Daten in ein anderes Blatt mit erweitertem Filter in Excel

3. den erweiterten VBA-Filter für das ODER mit UND-Kriterien in einem Bereich in Excel verwenden

Sie können auch die OR und die UND Sie möchten zum Beispiel die Werte für folgende Kriterien ermitteln Cookies oder Pralinen sondern für die Kekse, es gibt noch ein weiteres Preiskriterium $0.65 Befolgen Sie dazu die nachstehenden Anweisungen.

Schritt 1:

  • Fügen Sie Folgendes ein VBA Codes nach dem Öffnen des VBA-Makro .
 Sub Apply_VBA_Advanced_Filter_for_OR_with_AND_Criteria() 'Declare Variable for dataset range and for criteria range Dim Dataset_Rng As Range Dim Criteria_Rng As Range 'Legen Sie die Position und den Bereich des Datensatzbereichs und des Kriterienbereichs fest Set Dataset_Rng = Sheets("Sheet3").Range("B4:E11") Set Criteria_Rng = Sheets("Sheet3").Range("B14:E16") 'Wenden Sie den erweiterten Filter an, um den Datensatz anhand der Kriterien zu filternDataset_Rng.AdvancedFilter Action:=xlFilterInPlace, CriteriaRange:=Criteria_Rng End Sub 

Schritt 2:

  • Dann speichern Sie das Programm zunächst mit der Taste F5 um es auszuführen.
  • Folglich finden Sie die Werte mit bestimmten UND und OR.

Lesen Sie mehr: Erweiterte Filter basierend auf mehreren Kriterien in einer Spalte in Excel anwenden

Ähnliche Lektüre:

  • Erweiterte Filter mit mehreren Kriterien in Excel (15 geeignete Beispiele)
  • Dynamische erweiterte Filter Excel (VBA & Makro)
  • Verwendung des erweiterten Filters in VBA (eine Schritt-für-Schritt-Anleitung)
  • Erweiterte Filter mit Kriterienbereich in Excel (18 Anwendungen)
  • Excel Advanced Filter Not Working (2 Gründe & Lösungen)

4. erweiterte VBA-Filter für eindeutige Werte mit mehreren Kriterien in Excel verwenden

Außerdem können Sie Duplikate in Ihrem Datensatz beim Filtern entfernen. Wir fügen die Einzigartig Argument zu Wahr um nur die eindeutigen Werte zu erhalten und die Duplikate zu löschen. Befolgen Sie die beschriebenen Anweisungen.

Schritt 1:

  • Öffnen Sie zunächst die VBA Makro durch Drücken von Alt + F11.
  • Fügen Sie Folgendes ein VBA Codes in einem neuen Modul.
 Sub Apply_VBA_Advanced_Filter_for_Unique_Values() 'Declare Variable for dataset range and for criteria range Dim Dataset_Rng As Range Dim Criteria_Rng As Range 'Legen Sie die Position und den Bereich des Datensatzbereichs und des Kriterienbereichs fest Set Dataset_Rng = Sheets("Sheet4").Range("B4:E11") Set Criteria_Rng = Sheets("Sheet4").Range("B14:E16") 'Wenden Sie den erweiterten Filter an, um den Datensatz anhand der Kriterien zu filternDataset_Rng.AdvancedFilter Action:=xlFilterInPlace, CriteriaRange:=Criteria_Rng, Unique:=True End Sub 

Schritt 2:

  • Drücken Sie dann F5 um das Programm nach dem Speichern auszuführen.
  • Daher erhalten Sie nur Werte für die eindeutigen.

Lesen Sie mehr: Wie man den erweiterten Filter nur für eindeutige Datensätze in Excel verwendet

5. erweiterte VBA-Filter für bedingten Fall durchführen

Zusätzlich zu den vorherigen Methoden können Sie auch Bedingungen mit Formeln anwenden. Wir wollen zum Beispiel die Preise insgesamt die größer sind als $100 Befolgen Sie dazu einfach die folgenden Schritte.

Schritt 1:

  • Erstens, zum Öffnen des VBA-Makro , drücken Alt + F11 .
  • Wählen Sie eine neue Modul und fügen Sie Folgendes ein VBA-Codes .
 Sub Apply_VBA_Advanced_Filter_for_Formula() 'Declare Variable for dataset range and for criteria range Dim Dataset_Rng As Range Dim Criteria_Rng As Range 'Legen Sie die Position und den Bereich des Datensatzbereichs und des Kriterienbereichs fest Set Dataset_Rng = Sheets("Sheet5").Range("B4:E11") Set Criteria_Rng = Sheets("Sheet5").Range("B14:E15") 'Wenden Sie den erweiterten Filter an, um den Datensatz anhand der Kriterien zu filternDataset_Rng.AdvancedFilter Action:=xlFilterInPlace, CriteriaRange:=Criteria_Rng End Sub 

Schritt 2:

  • Zweitens: Speichern Sie das Programm und drücken Sie die F5 um die Ergebnisse zu sehen.

Anmerkungen. Außerdem können Sie die Ergebnisse in einem neuen Bereich oder in einem neuen Arbeitsblatt in einem günstigen Bereich erhalten, indem Sie die xlFilterCopy Fügen Sie einfach die VBA Codes und führen Sie sie aus, um die Ergebnisse in Blatt6 in Reichweite B4:E11 .

 'Declare Variable for dataset range and for criteria range Dim Dataset_Rng As Range Dim Criteria_Rng As Range 'Set the location and range of dataset range and criteria range Set Dataset_Rng = Sheets("Sheet5").Range("B4:E11") Set Criteria_Rng = Sheets("Sheet5").Range("B14:E15") 'Apply Advanced Filter to filter the dataset using the criteria Dataset_Rng.AdvancedFilter Action:=xlFilterCopy,CriteriaRange:=Criteria_Rng, CopyToRange:=Sheets("Sheet6").Range("B4:E11") End Sub 

  • Sehen Sie sich daher das Endergebnis in einem neuen Arbeitsblatt an Blatt6 .

Lesen Sie mehr: Wie man den erweiterten Filter verwendet, wenn der Kriterienbereich Text in Excel enthält

Schlussfolgerung

Zusammenfassend hoffe ich, dass Sie nun wissen, wie Sie die VBA erweiterter Filter in Excel um mehrere Kriterienbereiche zu filtern. Alle diese Methoden sollten Sie zum Lernen und Üben mit Ihren Daten verwenden. Schauen Sie sich das Übungsbuch an und wenden Sie das Gelernte an. Dank Ihrer tatkräftigen Unterstützung können wir weiterhin Seminare wie dieses anbieten.

Wenn Sie Fragen haben, zögern Sie bitte nicht, uns zu kontaktieren. Bitte teilen Sie uns Ihre Meinung in den Kommentaren unten mit.

Die Exzellent Die Mitarbeiter werden Ihre Anfragen so schnell wie möglich beantworten.

Bleiben Sie bei uns und lernen Sie weiter.

Hugh West ist ein äußerst erfahrener Excel-Trainer und -Analyst mit über 10 Jahren Erfahrung in der Branche. Er verfügt über einen Bachelor-Abschluss in Rechnungswesen und Finanzen sowie einen Master-Abschluss in Betriebswirtschaft. Hugh hat eine Leidenschaft für das Unterrichten und hat einen einzigartigen Lehransatz entwickelt, der leicht zu befolgen und zu verstehen ist. Seine Expertenkenntnisse in Excel haben Tausenden von Studenten und Berufstätigen auf der ganzen Welt geholfen, ihre Fähigkeiten zu verbessern und in ihrer Karriere herausragende Leistungen zu erbringen. Über seinen Blog teilt Hugh sein Wissen mit der Welt und bietet kostenlose Excel-Tutorials und Online-Schulungen an, um Einzelpersonen und Unternehmen dabei zu helfen, ihr volles Potenzial auszuschöpfen.