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

Set c = .Find("x", LookIn:=xlValues) die Zweite

Set c = .Find("x", LookIn:=xlValues) die Zweite
02.05.2008 21:03:00
Sonnenpeter
Hallo nochmal,
angeregt durch "Erich aus Kamp-Lintfort"
siehe hier: https://www.herber.de/forum/messages/974149.html
habe ich mich auch noch einmal mit dem Thema beschäftigt.
Wobei das meine Ratlosigkeit von gestern noch nicht erklärt!
Als Anlage habe ich mal meine Bastelei beigefügt.
siehe: https://www.herber.de/bbs/user/52040.xls
"TestenFindMethodexlValues" findet nicht alles! Merkwürdig für mich ist wenn ich "TestenFindMethodexlValuesxlWhole" laufen lasse findet es im Anschluss noch weniger.
wenn "TestenFindMethodexlValuesxlPart" vorher läuft findet "TestenFindMethodexlValues" mehr Einträge
"TestenFindMethodexlValuesxlWhole" findet an wenigsten!
"TestenFindMethodexlValuesxlPart" findet nicht alles!
"TestenForEachMethode" findet alles!
Ich bin gespannt auf die Antworten.
Ich mutmaße, dass der Suchdialog vorher eingestellt werden müsste? nur wie?
Gruß Sonnenpeter

17
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Set c = .Find("x", LookIn:=xlValues) die Zweite
02.05.2008 21:16:00
Gerd
Hallo Sonnenpeter,
Du bist auf meine Fragen nicht mehr so ganz vollständig eingegangen.
Oder hast es mit Lookin:= xlFormulas probiert ?
Gruß Gerd

AW: Set c = .Find("x", LookIn:=xlValues) die Zweit
02.05.2008 21:35:05
Sonnenpeter
Hallo Gerd,
in der gestrigen Vorlage waren nur absolute Werte und keine Formeln.
Deshalb dacht ich mir das Lookin:= xlFormulas nix bringt.
Bist Du da anderer Meinung?
Gruß Sonnenpeter

AW: Set c = .Find("x", LookIn:=xlValues) die Zweit
02.05.2008 21:43:00
Gerd
Hi Sonnenpeter,
bei mir hatte es mit xlFormulas u. xlWhole u Suchwert 0.5 funktioniert.
Ich muss natürlich noch das Fragezeichen setzen, ob das Zahlenformat in
deiner Beispielmappe bei mir richtig an kam (zwei Nachkommastellen).
Gruß Gerd

Anzeige
AW: Set c = .Find("x", LookIn:=xlValues) die Zweit
02.05.2008 22:26:00
Sonnenpeter
Hallo Gerd,
das Zahlenformat stimmt.
Habe das Ganze mal in die Beispielmappe eingefügt, da funzt es nicht.
Schönen Abend noch.
Gruß Sonnenpter

AW: Set c = .Find
03.05.2008 10:46:40
Sonnenpeter
Hallo Gerd,
schau Dir das jetzt mal an, LookIn:=xlFormulas findet nur absolute Werte (siehe gelbe Zelle)
https://www.herber.de/bbs/user/52048.xls
Gruß Sonnenpeter

AW: Set c = .Find
03.05.2008 12:01:43
Gerd
Hallo Sonnenpeter,
na immerhin.
So einen Methoden-Check-Code wie Erich G. erstelle ich allenfalls in den Wintermonaten,
wenn ich Muße dazu habe. Ob jener vollständig ist ?
Falls Du bei deinem Problem weiterkommen möchtest, empfehle ich dir, deine Konstellation (Zahlenformat der Spalte; mögliche Werte-Arten;Formeln?) vollständig zu beschreiben.
Dass es darauf bei der Find-Methode ankommt, ist ja "eh' klar".
Gruß Gerd

Anzeige
AW: Find-Methode - @Gerd
03.05.2008 23:26:57
Erich
Hi Gerd,

So einen Methoden-Check-Code wie Erich G. erstelle ich allenfalls in den Wintermonaten,
wenn ich Muße dazu habe. Ob jener vollständig ist ?

Was ich in https://www.herber.de/forum/archiv/972to976/t973902.htm#974149 geschrieben habe, ist doch nun wirklich
kein Methoden-Check, sondern nur ein kleines Beispiel für die im Betreff aufgestellte Behauptung.
Die Frage, ob er vollständig sein, erübrigt sich damit wohl.
Die 5 oder 10 Minuten, die ich dafür aufgewandt habe, halte ich für recht gut angelegt - auch im Sommer.
Besser einmal etwas intensiver nachdenken als beim nächsten ähnlichen Problem wieder rätseln
und vielleicht hereinfallen. Da unterscheiden sich vermutlich unsere Arbeitsweisen etwas.
Wenn ich so etwas wie die Find-Methode einsetze, will ich vorher wissen, welche Ergebnisse ich
unter welchen Bedingungen erwarten kann, wie ich die Methode zur Lösung eines Problems richtig,
vielleicht optimal, oder besser gar nicht anwende.
Rückmeldung wäre nett! - Grüße von Erich aus Kamp-Lintfort

Anzeige
AW: Find-Methode - @Gerd
04.05.2008 01:22:54
Gerd
Hallo Erich,
wenn Du dies so schnell hingekriegt hast, meine Hochachtung.
Außerdem hast Du ein paar Expertenmeinungen zu diesem Thema damit widerlegt.
Der Fragesteller war aber offenbar der Meinung, mein Lösungsvorschlag müsste bei
allen Zahlenformat-Konstellationen gleichzeitig funktionieren. Dem ist natürlich nicht so.
Meine Vorgehensweise ist, im Tabellenbereich für eine einheitliche Datenhaltung zu sorgen,
z.B. durch Runden u. schaue mir den Typ des Suchbereichs an.
Die Argumente von Lookat und Lookin probiere ich, falls erforderlich, dann durch u.
bekomme im Regelfall so den passenden Variablentyp/ das passende Format für den
Suchbegriff.
Gruß Gerd

Anzeige
AW: Find-Methode - @Gerd
04.05.2008 11:18:00
Ramses
Hallo Gerd
Sorry, dass ich mich da nochmal einmische
Wenn ich eine Zahl suche, und das war die Anforderung, dann ist es völlig unerheblich in welchem Zahlenformat !! diese dargestellt werden.
Ich such mit der Find-Methode, ohne spezielle Zusätze immer nach den WERTEN in der Zelle.
Daher ist die Aussage, dass die Formatierung unerheblich ist, richtig.
Wenn ich Text suche, dann suche ich Text (Suchbegriff in Anführungszeichen) und dann finde ich Ihn auch.
Demzufolge ist die Methode von Erich zwar schön um die Abhängigkeiten zu testen und zum lernen.
Grundsätzlich ist aber der Programmierer, bzw. der Aufgabensteller, dafür verantwortlich zu definieren was gesucht werden soll
https://www.herber.de/bbs/user/52065.xls
Leider wird bei dem ganzen Dilemma die letzte Variant-Option der FIND-Methode immer wieder vergessen:
SearchFormat Optional Variant. The search format.
Gruss Rainer

Anzeige
Nachtrag
04.05.2008 11:23:00
ramses
Hallo Gerd
Vielleicht müsst ihr bei eurem DEUTSCHEN Excel den "Punkt" gegen das "Komma" austauschen
Das ist vielleicht die eigentliche Krücke :
Dass das deutsche EXCEL mit dem schweizer EXCEL nicht ganz kompatibel ist :-)
Gruss Rainer

AW: Find-Methode - @Gerd
04.05.2008 11:51:00
Gerd
Hallo Rainer,
warum eigentlich "sorry" :-)
Komm statt Punkt. Nee, da lag Nepumuk schon richtig. Beim "deutschen" Excel entspricht dem Komma
bei (echtern)Zahlen in VBA der Punkt.
SearchFormat: Man nehme, wenn man hat. Diesen Parameter gibt es, glaub' ich, ab xl2003.
Mag sein, dass Du deshalb so hinkommst.
Im deutschen xl2000 ist das unbefriedigende Ergebnis mit dem Zahlenformat (siehe Erich G.)
nun mal Fakt, kein einheitlicher Suchbegriff möglich.
Evtl. hätte ich mich wegen Versionsunterschieden besser ganz rausgehalten. :-)
Gruß Gerd

Anzeige
AW: Find-Methode - @Gerd
04.05.2008 13:53:53
Sonnenpeter
Hallo nochmal,
ich bin mir nicht sicher, ob ihr euch meine Datei mal runtergeladen habt und mal ein bisschen damit gespielt habt?
Es gibt wirklich für mich überraschende Ergebnisse. Je nach dem in welcher Reihenfolge die Makros ablaufen finden die Makros mal mehr und mal weiniger.
Was mich wieder zur Frage der Suchparametereinstellungen bringt.
Als Anlage noch mal meine Datei mit den Makros von Rainer ergänzt (zum Teil angepasst).
https://www.herber.de/bbs/user/52067.xls
Gruß Sonnenpeter
Aus dem heute sehr sonnigen Rheinhessen :-)

Anzeige
AW: Find-Methode
04.05.2008 22:55:00
Erich
Hi Sonnenpeter,
so überraschend ist es nicht, dass die Reihenfolge der Makros Einfluss auf die Suchergebnisse hat.
Bei Find ist es so: Wenn man einen Parameter weglässt, verwendet Find die Einstellung,
die dieser Parameter bei der vorigen Suche (ob par VBA oder per Suchen in Excel) hatte.
Excel merkt sich also die Sucheinstellungen. (Das sieht man direkt,
wenn man in Excel die Suche ein paar Mal aufruft und dabei die Suchoptionen variiert.)
Deshalb ist es immer ratsam, bei Find immer alle Parameter anzugeben. Damit wird man unabhängig davon,
wie die vorige Suche gesteuert wurde, also unabhängig vom Zufall.
(Allenfalls könnte man bei der Suche nach Zahlen mal den Parameter für Groß/Kleinschreibung (MatchCase) weglassen.)
Ebenso ratsam ist es, bei der manuellen Suche in Excel zu überprüfen, ob man mit den richtigen Einstellungen sucht.
Warum Rainer sich in seiner Routine bei "Set rng = Cells.Find(what:=sFind)" auf die Angabe des
what-Parameters beschränkt, ist für mich schlicht unverständlich.
Zum SearchFormat-Parameter habe ich in meinem Posting an Ramses schon etwas geschrieben -
auch den sollte man nicht einfach weglassen.
Rückmeldung wäre nett! - Grüße von Erich aus Kamp-Lintfort

Anzeige
AW: Find-Methode
06.05.2008 00:10:00
Ramses
Hallo Erich
"...auf die Angabe des what-Parameters beschränkt, ist für mich schlicht unverständlich..."
Das sollte nur als Beispiel dienen, das mit diesem simplen Aufruf sowohl der Wert "0.5" innerhalb eines Textes (xlPart) in A1 wie auch als reiner Wert (xlWhole) von EXCEL gefunden wird.
Ansonsten kann ich dir nur zustimmen:
"...Deshalb ist es immer ratsam, bei Find immer alle Parameter anzugeben...."
Daher wird auch der Wert 50% nicht gefunden ,... aber dir ist es anscheinend als einzigem aufgefallen ! ;-)
Gruss Rainer
PS: Gruss aus Malaysia, daher die Verzögerung der Antwort :.)

Anzeige
AW: Find-Methode - @Ramses
04.05.2008 19:16:00
Erich
Hallo Rainer,
so langsam verstehe ich anscheinend die Excel/VBA-Welt nicht mehr.
Wenn ich unter XL2002 (XP) deine Mappe https://www.herber.de/bbs/user/52065.xls öffne
und das Makro laufen lasse, wird der Wert 0,5 in A6 (50,00%) NICHT gefunden. Ist das bei dir anders?
Nach meinen Tests ist der Sucherfolg sehr wohl davon abhängig, wie die Zellen formatiert sind.
Schau dir bitte diese Mappe mal an:
https://www.herber.de/bbs/user/52074.xls
Den Parameter SearchFormat gibts in XL2002 auch schon, allerdings hilft er hier nicht weiter.
IMHO dient er dazu, nach Formaten zu suchen bzw. die Suche nach einem Wert auf bestimmte Formate einzugrenzen.
"SearchFormat:=False" empfielt sich, um eine eventuelle vorherige Format-Suche auszuschalten.
Rückmeldung wäre nett! - Grüße von Erich aus Kamp-Lintfort

AW: Find-Methode - @Ramses
05.05.2008 12:51:07
Erich
Hi Rainer,
deine Mappe (52065.xls) habe ich noch etwas erweitert:
https://www.herber.de/bbs/user/52098.xls
Meine daraus reultierende Meinung:
Find() eignet sich nicht zur Zahlensuche,
wenn man auch Formelergebnisse finden
und von Zellformaten unabhängig sein will.
Weiter unten im Thread habe ich gestern auch noch zwei Beiträge dazu geschrieben.
Dein (und auch Nepumuks) Kommentar dazu wäre mir wichtig.
Rückmeldung wäre nett! - Grüße von Erich aus Kamp-Lintfort

300 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige