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

Forumthread: VBA: find-Befehl findet Wert nicht bei ";;;"

VBA: find-Befehl findet Wert nicht bei ";;;"
18.10.2005 08:58:55
Bernd
Hallo zusammen,
habe folgendes Problem :-(
Manche Zellen habe ich in meinem Sheet benutzerdefiniert mit ";;;" definiert, damit mir die Inhalte dieser Zellen beim ausdrucken nicht mitgedruckt werden.
Wenn ich aber nun in meinem Skript per "find" Befehl die Inhalte dieser Zellen suche, werden diese auch nicht mehr gefunden (z.B.: .Find("Hallo", LookIn:=xlValues).
Wie muss ich den find Befehl anpassen, damit er auch die Inhalte von Zellen findet, die mit ";;;" formatiert sind?
Danke für eure Antworten schon mal im voraus! :)
Gruß
Bernd
Anzeige

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

Betreff
Datum
Anwender
Anzeige
AW: VBA: find-Befehl findet Wert nicht bei ";;;"
18.10.2005 12:02:48
Luschi
Hallo Bernd,
gib den Parameter SearchFormat:=False im Find-Befehl mit an, dann sollte es klappen.
Gruß von Luschi
aus klein-Paris
AW: VBA: find-Befehl findet Wert nicht bei ";;;"
18.10.2005 12:03:32
WernerB.
Hallo Bernd,
ersetze doch mal
LookIn:=xlValues
durch
LookIn:=xlFormulas
Viel Erfolg wünscht
WernerB.
P.S.: Dieses Forum lebt auch von den Rückmeldungen der Fragesteller an die Antworter !
Anzeige
AW: VBA: find-Befehl findet Wert nicht bei ";;;"
18.10.2005 13:55:51
Bernd
Hallo Luschi und Werner,
danke für eure Antworten! Die Lösung mit SearchFormat:=False hat bei mir leider nicht funktioniert. Aber mit LookIn:=xlFormulas hat es geklappt! Besten Dank!!
Gruß
Bernd
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige
Anzeige
Anzeige

Infobox / Tutorial

VBA .Find-Befehl: Werte finden trotz benutzerdefinierter Formatierung


Schritt-für-Schritt-Anleitung

  1. Öffne dein Excel-Dokument und wechsle in die Visual Basic for Applications (VBA) Umgebung.
  2. Füge ein neues Modul hinzu: Klicke mit der rechten Maustaste auf "VBAProject (DeinDokument.xlsx)" und wähle "Einfügen" > "Modul".
  3. Nutze den .Find-Befehl zum Suchen von Werten in Zellen. Beispiel:
    Dim gesuchterWert As Range
    Set gesuchterWert = ActiveSheet.Cells.Find(What:="Hallo", LookIn:=xlValues)
  4. Falls die Zellen benutzerdefiniert mit ";;;" formatiert sind, ändere den Befehl wie folgt:
    Set gesuchterWert = ActiveSheet.Cells.Find(What:="Hallo", LookIn:=xlFormulas, SearchFormat:=False)
  5. Teste dein Skript und überprüfe, ob der gesuchte Wert gefunden wird.

Häufige Fehler und Lösungen

  • Excel Suche findet Wert nicht, obwohl vorhanden: Dies kann geschehen, wenn die Zellen so formatiert sind, dass der Inhalt nicht angezeigt wird. Stelle sicher, dass du den LookIn-Parameter auf xlFormulas setzt.

  • Verwendung von SearchFormat: Wenn du SearchFormat:=False angibst und immer noch nicht fündig wirst, überprüfe, ob der Formatierungsfilter korrekt eingestellt ist.


Alternative Methoden

  • VBA .Find mit LookIn:=xlFormulas: Diese Methode wird empfohlen, wenn du mit Zellen arbeitest, die spezielle Formatierungen haben.
  • Verwendung von AutoFilter: Eine weitere Möglichkeit, Werte zu finden, ist die Verwendung von AutoFilter, um die gewünschten Daten sichtbar zu machen.

Praktische Beispiele

Hier ist ein einfaches Beispiel, das den .Find-Befehl in einer realen Anwendung zeigt:

Sub SucheNachWert()
    Dim Suchwert As String
    Dim gefundenerWert As Range

    Suchwert = "Hallo"
    Set gefundenerWert = ActiveSheet.Cells.Find(What:=Suchwert, LookIn:=xlFormulas, SearchFormat:=False)

    If Not gefundenerWert Is Nothing Then
        MsgBox "Wert gefunden in Zelle: " & gefundenerWert.Address
    Else
        MsgBox "Wert nicht gefunden."
    End If
End Sub

Dieses Skript sucht nach dem Wert "Hallo" und gibt die Adresse der Zelle aus, wenn der Wert gefunden wird.


Tipps für Profis

  • Verwende Variablen für Suchparameter: Dies macht deinen Code flexibler. Beispiel:
    Dim lookInOption As XlFindLookIn
    lookInOption = xlFormulas
    Set gefundenerWert = ActiveSheet.Cells.Find(What:="Hallo", LookIn:=lookInOption)
  • Fehlerbehandlung: Implementiere eine Fehlerbehandlung, um unerwartete Situationen zu managen, wie das Schließen des Suchdialogs.

FAQ: Häufige Fragen

1. Warum findet der .Find-Befehl keinen Wert?
Das kann passieren, wenn die Zelle mit einer benutzerdefinierten Formatierung, wie ";;;", versehen ist. In solchen Fällen sollte LookIn:=xlFormulas verwendet werden.

2. Was ist der Unterschied zwischen LookIn:=xlValues und LookIn:=xlFormulas?
xlValues sucht nach den sichtbaren Werten in den Zellen, während xlFormulas auch die Formelwerte in den Zellen berücksichtigt, was wichtig ist, wenn die Zellen speziell formatiert sind.

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