Live-Forum - Die aktuellen Beiträge
Datum
Titel
01.11.2025 21:11:38
01.11.2025 14:22:20
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: Suchfeld erstellen

Suchfeld erstellen
14.02.2020 09:19:32
Longo
Hallo
Ich möchte ein Suchfeld mittels VBA erstellen. Ich habe in Tabelle1 eine formatierte Tabelle. Darin soll lediglich die Spalte J nach dem eingegebenen Begriff durchsucht werden. Ideal wäre wenn ohne * gesucht werden kann und die Tabelle dabei gleich gefiltert wird.
Kann mir jemand helfen?
Gruss Longo
Anzeige

7
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Suchfeld erstellen
14.02.2020 09:56:02
Werner
Hallo,
da stellt sich die Frage, weshalb filterst du nicht einfach die Spalte J. Bei einer intelligenten Tabelle ist doch der Filter sowieso schon gesetzt.
Gruß Werner
AW: Suchfeld erstellen
14.02.2020 09:59:28
Longo
Ja das stimmt. Aber ich möchte dies ein wenig vereinfachen. Eine Möglichkeit wäre auch, wenn man den Filterbegriff in einer Zelle eingeben und mit Enter die Filterung aktivieren könnte.
Anzeige
AW: Suchfeld erstellen
14.02.2020 10:29:22
Werner
Hallo,
keine Ahnung weshalb das Rad neu erfunden werden muss. Aber was solls.
Der Code gehört ins Codemodul des Tabellenblattes, auf dem sich deine intelligente Tabelle befindet.
Name der Tabelle sowie Zelle für die Eingabe des Filterbegriffs anpassen.
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Address(0, 0) = "A1" Then
If Target  "" Then
ListObjects("Tabelle1").Range.AutoFilter Field:=10, Criteria1:=Target
Else
ListObjects("Tabelle1").Range.AutoFilter Field:=10
End If
End If
End Sub
Gruß Werner
Anzeige
AW: Suchfeld erstellen
14.02.2020 13:38:33
Longo
Super, das ist das was ich gesucht habe.
Kann man den Code noch so anpassen, dass ohne * gesucht werden kann. D.h., dass es bereits filtert wenn ich auch nur Teile des Suchbegriffs eingebe?
AW: Suchfeld erstellen
15.02.2020 13:29:18
Werner
Hallo,
meinst du so?
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Address(0, 0) = "A1" Then
If Target  "" Then
ListObjects("Tabelle1").Range.AutoFilter Field:=10, Criteria1:=Target & "*"
Else
ListObjects("Tabelle1").Range.AutoFilter Field:=10
End If
End If
End Sub
Gruß Werner
Anzeige
AW: Suchfeld erstellen
15.02.2020 19:39:27
Longo
Ja genau. Ich habe nun vor und hinter dem Target ein "*" gesetzt:
ListObjects("Tabelle1").Range.AutoFilter Field:=10, Criteria1:="*" & Target & "*"
So funktioniert es perfekt.
Danke für die Hilfe.
Gerne u. Danke für die Rückmeldung. o.w.T.
15.02.2020 20:39:43
Werner
;
Anzeige
Anzeige

Infobox / Tutorial

Suchfeld in Excel erstellen


Schritt-für-Schritt-Anleitung

  1. Öffne Excel und erstelle eine formatierte Tabelle. Stelle sicher, dass die Tabelle in Tabelle1 benannt ist.

  2. Gehe zu dem Tabellenblatt, auf dem sich deine Tabelle befindet.

  3. Drücke ALT + F11, um den VBA-Editor zu öffnen.

  4. Suche im Projektfenster auf der linken Seite nach deinem Tabellenblatt (z.B. Tabelle1).

  5. Doppelklicke auf das Tabellenblatt, um das Codemodul zu öffnen.

  6. Füge folgenden Code ein:

    Private Sub Worksheet_Change(ByVal Target As Range)
        If Target.Address(0, 0) = "A1" Then
            If Target <> "" Then
                ListObjects("Tabelle1").Range.AutoFilter Field:=10, Criteria1:="*" & Target & "*"
            Else
                ListObjects("Tabelle1").Range.AutoFilter Field:=10
            End If
        End If
    End Sub
  7. Schließe den VBA-Editor und kehre zu Excel zurück.

  8. Gib in die Zelle A1 deinen Suchbegriff ein. Die Tabelle wird automatisch gefiltert.


Häufige Fehler und Lösungen

  • Fehler: Es wird kein Filter angewendet.

    • Lösung: Stelle sicher, dass du den richtigen Tabellennamen (Tabelle1) im Code verwendest.
  • Fehler: Die Filterung funktioniert nicht, wenn ich nur Teile des Suchbegriffs eingebe.

    • Lösung: Überprüfe den Code auf die korrekte Verwendung von Wildcards (*). Die Zeile sollte so aussehen: Criteria1:="*" & Target & "*".

Alternative Methoden

Wenn du kein VBA verwenden möchtest, kannst du auch die Filterfunktion von Excel nutzen:

  1. Wähle die Spalte J in deiner Tabelle aus.
  2. Gehe zu Daten > Filter.
  3. Verwende das Dropdown-Menü in der Spaltenüberschrift, um nach bestimmten Werten zu filtern.

Eine andere Möglichkeit ist die Verwendung einer Suchleiste in Excel:

  1. Füge eine neue Zeile oberhalb deiner Tabelle für die Suchleiste hinzu.
  2. Verwende die Funktion FILTER (in Excel 365) oder SVERWEIS, um die Ergebnisse dynamisch basierend auf dem Suchbegriff anzuzeigen.

Praktische Beispiele

  1. Interaktives Suchfeld in Excel: Du kannst ein interaktives Suchfeld erstellen, indem du eine ComboBox oder ein Textfeld in deinem Arbeitsblatt einfügst und mit dem obigen VBA-Code verbindest.

  2. Suchfeld mit Ausgabe: Wenn du eine Ausgabe in einer bestimmten Zelle benötigst, kannst du den gefundenen Wert in eine andere Zelle schreiben, indem du im VBA-Code Range("B1").Value = Target hinzufügst.


Tipps für Profis

  • Makros optimieren: Füge Fehlerbehandlungsroutinen hinzu, um sicherzustellen, dass dein Code robust ist.

  • Zellformatierung: Formatiere die Zelle, in die der Suchbegriff eingegeben wird, um klarzustellen, dass dort eingegeben werden soll.

  • Access VBA: Wenn du mit Access arbeitest, kannst du ein ähnliches Suchfeld im Formular erstellen, um die Benutzerfreundlichkeit zu erhöhen.


FAQ: Häufige Fragen

1. Wie kann ich das Suchfeld in Excel einfügen? Du kannst ein Suchfeld in Excel erstellen, indem du eine Zelle für die Eingabe wählst und den passenden VBA-Code verwendest, um die Filterung zu aktivieren.

2. Kann ich mehrere Suchkriterien gleichzeitig verwenden? Ja, du kannst den Code anpassen, um mehrere Kriterien zu akzeptieren, indem du eine logische UND- oder ODER-Bedingung hinzufügst.

3. Ist ein Excel-Suchfeld auch in älteren Versionen verfügbar? Die grundlegende Filterfunktion ist in den meisten Excel-Versionen verfügbar. Für VBA-Methoden benötigst du mindestens Excel 2000 oder höher.

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