Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
836to840
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
836to840
836to840
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Find Methode

Find Methode
18.01.2007 14:48:11
Daniel
Hallo,
kann mir jemand verraten, warum die Find-Methode bei mir im Direkt-Fenster funktioniert, aber nicht, wenn ich die entsprechende VBA-Funktion in einer Zelle hinterlege?
Beispiel:
Public

Function fct_Finde(strFind)
Dim rngFind As Range
With Workbooks("Test.xls").Worksheets("Tabelle1")
Set rngFind = .Range("A1:A100").Find(strFind)
If Not rngFind Is Nothing Then
Debug.Print rngFind.Row
End If
End With
End Function

Mit dieser Funktion suche ich in der angegeben Range einen Wert. Wenn dieser Wert gefunden ist, wird die zugehörige Zeile ausgegeben. Wenn ich die Funktion in eine Zelle schreibe funktioniert es nicht, im Direkt-Fenster schon. Die Variable strFind wird ordnungsgemäß übergeben. Es gibt auch keine Fehlermeldung. Der gesuchte Wert wird einfach nicht mehr gefunden. In Excel 2003 tritt der Fehler bei mir nicht auf, nur in Excel XP. Warum? Vielen Dank für die Hilfe...
Gruß Daniel

9
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Find Methode
18.01.2007 14:56:48
haw
Hallo Daniel,

Function fct_Finde(strFind)
Dim rngFind As Range
With ThisWorkbook.Worksheets("Tabelle1")
Set rngFind = .Range("A1:A100").Find(strFind)
If Not rngFind Is Nothing Then
fct_Finde = rngFind.Row
End If
End With
End Function

Du musst den wert ja der Funktion wieder zuweisen:
fct_Finde = rngFind.Row
Gruß Heinz
AW: Find Methode
18.01.2007 15:16:51
Daniel
Hallo Heinz,
vielen Dank für Deine schnelle Antwort. Die Zeile hatte ich natürlich in meinem Beispiel vergessen, aber nicht in der Originalfunktion. Das ist aber nicht das Problem.
Es ist einfach das Problem, das der Wert nicht gefunden wird, - sprich rngFind nothing ist - wenn ich die Funktion in einer Zelle hinterlege. Wenn ich die Funktion aus dem Dirkektfenster ausführe, wird der Wert sofort gefunden und rngFind ist nicht nothing.
In beiden Fällen übergebe ich der Funktion natürlich die Eingangsvariable strFinde und zwar mit dem gleichen Wert.
Warum passiert das?
Gruß Daniel
Anzeige
AW: Find Methode
18.01.2007 15:27:55
Lars
Hi,
ist deine Excelversion wirklich XP? Es funktionierte bis Excel 2000 nicht, ab XP
schon. Hast du die Function von haw 1:1 übernommen?
mfg Lars
AW: Find Methode
18.01.2007 15:34:27
Daniel
Hallo Lars,
Du hast recht, ich benutze Excel 2000 und Excel 2003 und bei 2000 funktioniert es nicht. Aber warum? Wie soll ich stattdessen suchen? Ich muss 2000 leider auch noch nutzen.
Gruß Daniel
AW: Find Methode
18.01.2007 16:03:12
Lars
Hi,
ja, warum das so ist, wissen wohl nur die Programmierer und außerdem
nützt es dir auch nichts, das zu wissen.
mfg Lars
AW: Find Methode
18.01.2007 16:10:13
Daniel
Hallo Lars,
komisch! Aber wie umgehe ich denn jetzt das Problem?
Gruß Daniel
Anzeige
AW: Find Methode
18.01.2007 16:16:47
Lars
Hi,
bei den paar Zellen kannst du das locker mit einer Schleife erledigen.
mfg Lars
AW: Find Methode
18.01.2007 16:24:35
Daniel
Hallo Lars,
das war ja nur die Beispieldatei. In der richtigen ist die Suche erheblich umfangreicher, sprich die Tabelle hat locker 30000 Datensätze. Mit Schleife habe ich auch schon probiert, dauert aber viel zu lange.
Es muss doch irgendeine Möglichkeit in Excel 2000 geben!
Gruß Daniel
AW: Find Methode
18.01.2007 22:36:15
Lars
"Es muss doch irgendeine Möglichkeit in Excel 2000 geben!"
Nein!
mfg Lars

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige