Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1040to1044
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
Inhaltsverzeichnis

Benutzerdefinierte Version gesucht

Benutzerdefinierte Version gesucht
23.01.2009 11:23:51
Lorenz
Hallo u. guten Morgen!
Ist es möglich? Wenn ja, wie?
Und zwar offizielle EXCELFormel (funktionier leider nur Wenn WinterDienst in gleicher Mappe ist.
Die Formel lautet
=WENN(ISTFEHLER(VERGLEICH(A1;WinterDienst;1));"WAHR";"FALSCH) , wobei das wahr, Falsch nur als Ergebnis von "ISTFEHLER(VERGLEICH(A1;WinterDienst;1)) " geliefert werden soll.
Wie soll die Benutzerdefinierte Funktion ausschaun? Hat vielleicht jemand ne Idee?
PS.:WinterDienst steht für benannte Formel mit dynamischer Bereich (=INDIREKT("Daten!BH2:BH" & ANZAHL2(Daten!$BH:$BH)+1))
Danke u. Gruss
Lorenz

8
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
und was soll das bringen ? (owT)
23.01.2009 11:26:08
RS

AW: und was soll das bringen ? (owT)
23.01.2009 11:44:00
Lorenz
Hallo!
Das ganze soll in weiterer Folge zur Verkürzung von mehrfach verschachtelter Formeln dienen.
In einer der Formeln kommt bis zu 7 mal "WENN(ISTFEHLER(VERGLEICH(A1;WinterDienst;1));"x";""Y)" vor, weil mehrere Bereiche abgefragt werden.Somit wäre die Gesamtlänge der Formel um Einiges kürzer. Zweitens dient mir der erbetene Code (funktion als grundstock für div. eigenmächtige Erweiterungen). In diese Richtung erlebte ich schon einige "sinnlose" Fehlversuche eine Funtionierende zu erstellen bzw. zu finden.
Gruss Lorenz
ExcelFormel durch UDF ersetzen?
23.01.2009 11:54:00
RS
Hi Lorenz,
Ich versteh Deine Argumentationimmer noch nicht.
Was bringt es eine EXCEL-Formel (Funktion) durch eine UDF (User defined Function) zu ersetze?
Dadurch werden deine Formeln doch nur minimal länger, dafür maximal langsamer!
Wenn also ISTFEHLER(...) durch z.b. MyIE ersetzt wird sparst du jedesmal 5 Buchstaben und verbratest x Sekunden Berechnungszeit.
Wäre da ein Ansatz über Hilfsspalten, Formeln verstehen, ersetzen, überarbeiten etc.. nich effektiver ?
Grüsse RS
Anzeige
AW: ExcelFormel durch UDF ersetzen?
23.01.2009 12:22:00
Lorenz
Hallo RS.
1.)Das mit den HilfsSpalten habe ich deshalb nicht mehr in Betracht genommen, da von 256 nurmehr 12 Spalten frei sind. Bei Auslagerung in andere Tabellen werden die Formeln ja noch länger.
2.)"ISTFEHLER(VERGLEICH(A1;WinterDienst))" 38 Zeichen -7 Zeichen = 31 Zeichen die ich mir erspare wenn ich die UDF z. B. W_D(A1) nenne. Wenn dann z. B. 3x die UDF angewandt wird, so steht es schon
114:21 Zeichen. Dann stellt sich die Frage ob das "maximal langsamer" dem "minimal länger" überhaupt noch zu tragen käme?.
3.) Ich werde das Ganze in eine weitere Instanz benannte Formel verpacken, somit wird die Zeichenlänge ja auch um einiges kürzer
Danke und viele Grüße
Lorenz
Anzeige
AW: ExcelFormel durch UDF ersetzen?
23.01.2009 13:03:09
Timo
Hi RS,
ich muß da Lorenz mal beifplichten. Es ist nicht immer die Geschwindigkeit entscheidend.
Durch das umpacken in eine UDF hat er mehr Verschachtelungsmöglichkeiten frei und die Formeln werden übersichtlicher. Wenn dann noch die Berechnung der Tabelle z.B. nur ein mal pro Stunde notwendig ist, ist es meist nicht kriegsentscheidend, ob das 5, 15 oder 55 Sekunden dauert.
Bei der angestrebten UDF dürfte es bei vielleicht 15 Zeilen Code bleiben, da sollte eigentlich erst bei mehreren hundert Datenzeilen die Ausführungszeit erheblich in den Sekundenbereich rutschen.
Ich arbeite selbst mit einigen ähnlich gelagerten UDFs und habe da selbst bei über 1000 Datenzeilen kaum eine Verlängerung der Ausführungszeit bemerkt.
Gruß
Timo
Anzeige
Das ist ja schön für Lorenz...
23.01.2009 13:20:00
RS
Timo,
Wenn du schon solche UDF's hast, die Lorenz so dringend sucht, dann kannst Du ihm ja sicher ein paar zur Verfügung stellen ;-)
Grüsse RS
AW: und was soll das bringen ? (owT)
23.01.2009 14:36:00
Jürgen
Hallo Lorenz,
bevor Du zu VBA greifst (und erst recht, wenn Dein angegebener Skill-Level stimmt): hast Du alternative Wege in betracht gezogen, um Dein Ziel zu erreichen, z.B. durch Verwendung der Matrixfunktionalitäten in Excel?
Beispiel: Du schreibst, dass in manchen Formeln 7 mal "Wenn..." erscheint. Ich nehme nun mal an, dass Ziel der Formel ist, dass "x" genutzt werden soll, wenn einer der Inhalte in den Zellen a1 bis a7 in Winterdienst enthalten ist, sonst "y". Das könntest Du auch erreichen mit
=WENN(SUMMENPRODUKT(ZÄHLENWENN(Winterdienst;a1:a7))>0;"x";"y")
Herzlichen Gruß
Jürgen
Anzeige
AW: und was soll das bringen ? (owT)
23.01.2009 15:23:41
Lorenz
Hallo Jürgen!
SUMMENPRODUKT, ZÄHLENWENN, INDIREKT, Matrixfunktionalitäten, ect. habe ich schon probiert, aber ohne Erfolg, da sämtliche Summen, Vergleiche ect. sich zwar in der selben Zeile aus verschiedenen Zeilen (das auch aus anderen Sheets) mit den verschiedensten Abfragen, Kriterien ect. (mal zusammenhängend, mal nicht)... zusammenstellt. Darum war auch mein Versuch(Wunsch) dies mittels VBA (UDF) zu lösen. Die Angabe zum Level stimmt nicht ganz, da bei "VBA bescheiden" - "Excel gut" angegeben ist. Das entspricht dann aber nicht ganz der Wahrheit, da ich mein "Excel-Wissen" nicht als gut bezeichnen kann.
Danke für die Hinweise u. viele Grüsse
Lorenz
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige