Makros/Templates/Funktionen/? verwenden

Antwort erstellen


BBCode ist eingeschaltet
[img] ist ausgeschaltet
[url] ist eingeschaltet
Smileys sind ausgeschaltet

Die letzten Beiträge des Themas
   

Ansicht erweitern Die letzten Beiträge des Themas: Makros/Templates/Funktionen/? verwenden

Re: Makros/Templates/Funktionen/? verwenden

von OONewb » So, 15.05.2011 18:20

Re: Makros/Templates/Funktionen/? verwenden

von Karolus » So, 15.05.2011 06:22

Hallo
Edit: Zufallsbereich hilft mir nicht, weil die zufällige Zahl nicht mit aktualisiert wird. Lediglich einmal initialisiert.
Mit Strg+shift+F9 wird auch ZUFALLSBEREICH aktualisiert.
Kann ich Funktionen mit Übergabeparametern und dem OO Script Syntax schreiben? (Oder etwas, das sich aus Zellen heraus aufrufen lässt)
Grundsätzkich ja, aber bevor du damit anfängst solltest du zunächst:
1. deine Formeln aufräumen und hier keine Relikte posten.
2. deine Tabellen in eine einfachere Struktur bringen, damit du evtl. einfachere Formeln hast, deren "Anpassung" auf unterschiedliche Parameter du durch ziehen/kopieren nach unten/oben/links/rechts...[in_anderes_Tabellenblatt] erledigen kannst.

Gruß Karo

Re: Makros/Templates/Funktionen/? verwenden

von OONewb » Sa, 14.05.2011 13:52

Karolus hat geschrieben:RUNDEN(1+(9*ZUFALLSZAHL())) macht das gleiche wie ZUFALLSBEREICH(1;10)
VERKETTEN( ... ) ist in dieser Formel absolut überflüssig,
Zufallsbereich ist ja mal praktisch, Verketten sollte ursprünglich mal 2 Strings zusammenfügen und ist ein Überbleibsel :oops:. Ergoogelt hab ich mir, dass das auch (und weniger umständlich) mit & funktioniert.
Danke für die Hinweise.
Edit: Zufallsbereich hilft mir nicht, weil die zufällige Zahl nicht mit aktualisiert wird. Lediglich einmal initialisiert. :(

Aber auch wenn das Beispiel anders zu vereinfachen ist - die eigentliche Frage bleibt noch offen:
(Wie) Kann ich Funktionen mit Übergabeparametern und dem OO Script Syntax schreiben? (Oder etwas, das sich aus Zellen heraus aufrufen lässt)

Re: Makros/Templates/Funktionen/? verwenden

von Karolus » Fr, 13.05.2011 18:52

Hallo

Code: Alles auswählen

=MAX(VERKETTEN(RUNDEN(1+(9*ZUFALLSZAHL()))*VERWEIS($D2;Name;AndereSpalte)+VERWEIS($D2;Name;AndereSpalte2))-$G2;0)
RUNDEN(1+(9*ZUFALLSZAHL())) macht das gleiche wie ZUFALLSBEREICH(1;10)
VERKETTEN( ... ) ist in dieser Formel absolut überflüssig, über den Sinn der beiden VERWEISe kann ich nicht urteilen da ich den Kontext nicht kenne.

Gruß Karo

Re: Makros/Templates/Funktionen/? verwenden

von OONewb » Fr, 13.05.2011 18:12

Karolus hat geschrieben:Deine Originalformel zB. sieht ziemlich furchtbar aus - ich vermute (ich kenne den Kontext nicht) das da erheblich optimiert werden kann.
Sind die Verweise so aufwändig? Die doppelte Suche wird vmtl. nicht optimal sein, aber ich sehe keinen Weg das in einem Durchgang zu machen. In Makros würde das vmtl. einfacher funktionieren, aber die Laufzeit ist nicht so kritisch, als dass es sich auszahlen würde das zu portieren.
Primär geht es mir um Übersichtlichkeit, damit Fehler leichter gefunden bzw. vermieden werden können.
Karolus hat geschrieben:ebenso wie man Zellbereichen einen Namen geben kann geht das im Prinzip genauso bei Formeln
Ich bin nicht wirklich fündig geworden wie/wo das geht, dürfte ich um ein Beispiel bitten? Bzw. funktioniert das dann auch mit Übergabeparametern?

Re: Makros/Templates/Funktionen/? verwenden

von Karolus » Fr, 13.05.2011 17:40

Hallo
Deine Originalformel zB. sieht ziemlich furchtbar aus - ich vermute (ich kenne den Kontext nicht) das da erheblich optimiert werden kann.

Um deine eigentliche Frage zu beantworten - ebenso wie man Zellbereichen einen Namen geben kann geht das im Prinzip genauso bei Formeln - du musst dir nur im klaren darüber sein ob du damit relative/ Adressen richtig umsetzt.

Gruß Karo

Makros/Templates/Funktionen/? verwenden

von OONewb » Fr, 13.05.2011 17:06

Hiho!

Ich hab mittlerweile schon recht lange Formeln in manchen Zeilen, die sehr oft die gleichen Funktionalitäten (mit unterschiedlichen Parametern) kombinieren.
Schön wäre es jetzt, wenn ich mir eigene Befehle wie VERKETTEN, SUMME, ... definieren könnte, um das zusammenzufassen und übersichtlicher zu machen.
Makros scheinen der Weg zum Ziel zu sein, aber ich sehe nicht ganz wie ich diese aus Zellen heraus benutzen kann.
Zudem sind die für Makros erlaubten Sprachen (Basic zB) komplexer als der 'normale' Code (was kein Stolperstein wäre, wenn es gar nicht anders ginge).

Nochmal anders:
Kann ich

Code: Alles auswählen

=MAX(VERKETTEN(RUNDEN(1+(9*ZUFALLSZAHL()))*VERWEIS($D2;Name;AndereSpalte)+VERWEIS($D2;Name;AndereSpalte2))-$G2;0)
irgendwie als Template oder eigene Funktion speichern und mit Parametern der Form

Code: Alles auswählen

=MeineFunktion($D2, $G2)
aufrufen?

Nach oben