Thema Datum  Von Nutzer Rating
Antwort
14.02.2008 09:53:51 Johannes
NotSolved
Blau Aw:Problem mit der find Funktion
15.02.2008 12:55:15 Holger
NotSolved

Ansicht des Beitrags:
Von:
Holger
Datum:
15.02.2008 12:55:15
Views:
860
Rating: Antwort:
  Ja
Thema:
Aw:Problem mit der find Funktion
Hallo Johannes,
ob die Find-Methode schneller als andere ist, kann man nicht allgemein sagen. Meistens wird die Suchgeschwindigkeit durch die Suchlogik mehr beeinflusst. Ich weiß nicht, wie die Methode intern funktioniert, insb. nicht, ob Excel für jeden Suchvorgang den Suchbegriff neu zusammensetzt. Da das bei dir in einem anderen Tabellenblatt stattfindet, empfehle ich, zu versuchen, den Suchbegriff in eine Variable zu packen und dann danach zu suchen. Vielleicht geht geht das schneller. Also z.B.
a = ProdNr & " " & Workbooks("projekte.xls").Worksheets(ProdNr).Cells(AVO_Ort, 2).Value
Set ProjDP = Workbooks("kalender.xls").Worksheets("Januar").Range("D9:IV44").Find(a)
Eine Garantie für einen schnelleren Ablauf kann ich nicht übernehmen, da ich keinen Test durchgeführt habe.
Zu 2.: Schalte doch einfach vor dem Suchen per Makro den Autofilter aus und nach dem Suchen wieder automatisch ein. Wie das geht kannst du leicht per Makro-Aufzeichnen herausbekommen.
Viel Erfolg
Holger



Johannes schrieb am 14.02.2008 09:53:51:

hallo also ich habe eigentlich 2 fragen.
ich muss ein sheet durchsuchen. hab das zuerst über

Code:
For each ....
und mit do until ...loop

schleifen gemacht!
weil alles so lange gedauert hat hab ich diese suchmöglichkeiten durch die finf funktion ersetzt.
1 Frage: ist es richti dass die find funktion schneller ist als die andren oder gibt es noch was besseres?
2. Frage:
ich habe in dem tabellenblatt einen autofilter wenn dieser eine vorauswahl trifft funktioniert meine find funktion nicht mehr richtig. welche zellen sie jetzt genau nicht mehr findet kann ich nicht sagen. aber es sind auf jeden fall auch welche von denen dabei die mit dem aktuellen autofilter sichtbar sind.
hängt das vllt mit der range funktion zusammen?
Code:
Set ProjDP = Workbooks("kalender.xls").Worksheets("Januar").Range("D9:IV44").Find(ProdNr & " " & Workbooks("projekte.xls").Worksheets(ProdNr).Cells(AVO_Ort, 2).Value)
If ProjDP Is Nothing Then
MsgBox (ProdNr & " " & Workbooks("projekte.xls").Worksheets(ProdNr).Cells(AVO_Ort, 2).Value & " ist nicht im Kalender vorhanden!")
GoTo fehler
End If

Ihre Antwort
  • Bitte beschreiben Sie Ihr Problem möglichst ausführlich. (Wichtige Info z.B.: Office Version, Betriebssystem, Wo genau kommen Sie nicht weiter)
  • Bitte helfen Sie ebenfalls wenn Ihnen geholfen werden konnte und markieren Sie Ihre Anfrage als erledigt (Klick auf Häckchen)
  • Bei Crossposting, entsprechende Links auf andere Forenbeiträge beifügen / nachtragen
  • Codeschnipsel am besten über den Code-Button im Text-Editor einfügen
  • Die Angabe der Emailadresse ist freiwillig und wird nur verwendet, um Sie bei Antworten auf Ihren Beitrag zu benachrichtigen
Thema: Name: Email:



  • Bitte beschreiben Sie Ihr Problem möglichst ausführlich. (Wichtige Info z.B.: Office Version, Betriebssystem, Wo genau kommen Sie nicht weiter)
  • Bitte helfen Sie ebenfalls wenn Ihnen geholfen werden konnte und markieren Sie Ihre Anfrage als erledigt (Klick auf Häckchen)
  • Bei Crossposting, entsprechende Links auf andere Forenbeiträge beifügen / nachtragen
  • Codeschnipsel am besten über den Code-Button im Text-Editor einfügen
  • Die Angabe der Emailadresse ist freiwillig und wird nur verwendet, um Sie bei Antworten auf Ihren Beitrag zu benachrichtigen

Thema Datum  Von Nutzer Rating
Antwort
14.02.2008 09:53:51 Johannes
NotSolved
Blau Aw:Problem mit der find Funktion
15.02.2008 12:55:15 Holger
NotSolved