Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: "Suchen" mit VBA aufrufen?

"Suchen" mit VBA aufrufen?
23.08.2004 13:46:17
Michael
Hallo liebes Forum,
ich habe eine für Euch bestimmt ganz einfache Frage:
Wie sieht der VBA Text aus mit der ich die Suchfunktion öffnen kann?
1.000 Dank und Gruß
-Michael-
Anzeige

11
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: "Suchen" mit VBA aufrufen?
23.08.2004 14:02:55
Klaus
Hallo Michael,

Sub Suchen()
Application.Dialogs(xlDialogFormulaFind).Show
End Sub

Gruß Klaus
DANKE
Michael
DANKE KLAUS,
vielen Dank, funkt bestens.
Grüße
Michael
Geht doch nicht !!!
Michael
Hallo,
die Lösung scheint doch nicht zu klappen.
Er öffnet zwar das Suchfenster, jedoch findet er die gesuchte Zelle nicht, obwohl vorhanden.
Gruß
Michael
Anzeige
AW: Geht doch nicht !!!
Ulf
Das ist ein Bug! Markiere zuvor den Suchbereich!
Ulf
AW: Geht doch nicht !!!
Michael
Danke für die Nachricht Ulf.
Wie sieht den der VBA Text aus wenn das gesamte Tabellenblatt durchsucht werden soll ohne es vorher extra zu markieren?
Danke für ein Feedback
-Michael-
AW: Geht doch nicht !!!
Ulf

Sub Suchdialog()
If Not CommandBars.FindControl(ID:=1849) Is Nothing Then
CommandBars.FindControl(ID:=1849).Execute
End If
End Sub

Ulf
Anzeige
Geht leider immer noch nicht
Michael
Hallo,
das klappt leider immer noch nicht ?
Auch mit dem VBA Code wird nur der markierte Bereich durchsucht.
gibt es noch eine Idee?
Gruß
Michael
AW: Geht leider immer noch nicht
Ulf
Na logisch, es wird immer der markierte Bereich durchsucht. Ansonsten kannst du es per
Code erledigen, doch dafür muss der Dialog ja nicht angezeigt werden.
set rng = cells.find(....)
Ulf
Anzeige
AW: Geht leider immer noch nicht
Michael
Hallo Ulf,
kannst Du mir bitte den Code aufschreiben.
Ich habe davon leider null Ahnung, bin aber ganz stolz wenn ich das mit Deiner Hilfe hinbekommen.
Danke
Michael
AW: Geht leider immer noch nicht
Ulf
Selber machen bringt mehr, zeichne dir das Ganze mal per Makrorekorder auf.
Ulf
AW: Geht leider immer noch nicht
Michael
Schade, mit dem Macrorekorder hatte ich es schon probiert, leider aber nicht hinbekommen, da ich die Aufzeichnung nicht beenden konnte solange das Suchfenster noch geöffnet war. Sicherlich ist es ein einfaches für jemanden der sich da auskennt, für mich jedoch leider nicht.
Gruß
Michael
Anzeige
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige
Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken
Anzeige
Anzeige

Infobox / Tutorial

VBA Suchen und Finden in Excel


Schritt-für-Schritt-Anleitung

Um die Suchfunktion in Excel mit VBA zu nutzen, kannst du den folgenden Code verwenden. Dieser öffnet das Suchfenster:

Sub Suchen()
    Application.Dialogs(xlDialogFormulaFind).Show
End Sub

Falls du möchtest, dass das gesamte Tabellenblatt durchsucht wird, ohne dass du vorher einen Bereich markieren musst, kannst du diesen Code verwenden:

Sub Suchdialog()
    If Not CommandBars.FindControl(ID:=1849) Is Nothing Then
        CommandBars.FindControl(ID:=1849).Execute
    End If
End Sub

Häufige Fehler und Lösungen

  1. Problem: Das Suchfenster öffnet sich, aber die gesuchte Zelle wird nicht gefunden.

    • Lösung: Stelle sicher, dass du den Suchbereich vorher markierst, oder verwende den obenstehenden Code, um das gesamte Blatt zu durchsuchen.
  2. Problem: Der VBA-Code funktioniert nicht, obwohl du alles richtig eingegeben hast.

    • Lösung: Überprüfe, ob du die Makros in Excel aktiviert hast. Du kannst dies unter den Excel-Optionen im Abschnitt „Trust Center“ tun.

Alternative Methoden

Wenn du die VBA Suchen-Funktion nicht über ein Makro aufrufen möchtest, kannst du stattdessen die Find-Methode verwenden, um gezielt nach Werten in einem bestimmten Bereich zu suchen:

Dim rng As Range
Set rng = Cells.Find(What:="Suchbegriff", LookIn:=xlValues)
If Not rng Is Nothing Then
    MsgBox "Wert gefunden in Zelle " & rng.Address
Else
    MsgBox "Wert nicht gefunden."
End If

Diese Methode gibt dir mehr Kontrolle über die Suche und die Art der durchsuchten Werte.


Praktische Beispiele

Hier sind einige Anwendungsfälle für die VBA Suche:

  1. Suche nach einem bestimmten Text in einer Spalte:
Sub SucheInSpalte()
    Dim rng As Range
    Set rng = Columns("A").Find(What:="Text", LookIn:=xlValues)
    If Not rng Is Nothing Then
        MsgBox "Text gefunden in " & rng.Address
    Else
        MsgBox "Text nicht gefunden."
    End If
End Sub
  1. Suchen und Anzeigen der Position des gesuchten Wertes:
Sub SucheUndAnzeigen()
    Dim rng As Range
    Set rng = Cells.Find(What:="Suchbegriff")
    If Not rng Is Nothing Then
        rng.Select
        MsgBox "Wert gefunden in Zelle " & rng.Address
    Else
        MsgBox "Wert nicht gefunden."
    End If
End Sub

Tipps für Profis

  • Makrorekorder nutzen: Du kannst den Excel-Makrorekorder verwenden, um dir den Basiscode für häufige Aufgaben zu zeigen. Dies ist besonders hilfreich, wenn du noch nicht mit VBA vertraut bist.
  • Unicode in VBA: Wenn du mit Unicode-Text arbeitest, stelle sicher, dass deine Suchfunktion auch Unicode unterstützt. Dies kann durch die Verwendung von speziellen Funktionen in VBA erreicht werden.
  • Fehlerbehandlung: Implementiere Fehlerbehandlungsroutinen in deinen VBA-Skripten, um sicherzustellen, dass dein Code robust ist und unerwartete Situationen elegant behandelt.

FAQ: Häufige Fragen

1. Wie kann ich die Suchfunktion direkt aufrufen? Um die Suchfunktion direkt aufzurufen, kannst du den VBA-Befehl Application.Dialogs(xlDialogFormulaFind).Show verwenden.

2. Warum findet der Code nicht immer die gesuchten Werte? Stelle sicher, dass der gesuchte Wert exakt mit dem in der Zelle übereinstimmt, einschließlich Groß- und Kleinschreibung, wenn du die Find-Methode verwendest.

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