Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1652to1656
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

WF: Weitere Verkürzung von xlf Nr 501 (neopa)

WF: Weitere Verkürzung von xlf Nr 501 (neopa)
02.11.2018 03:27:06
xlf
https://www.clever-excel-forum.de/thread-17820-post-138868.html#pid138868
diesmal angeliefert von shift-del

23
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: WF: Weitere Verkürzung von xlf Nr 501 (neopa)
02.11.2018 07:35:49
xlf
Hallo Alexander,
Sorry, aber wenn eine Formel unter Umständen nicht das Richtige ausspuckt und nicht einmal darauf hinweist, dann ist sie IMHO Sondermüll.
Das Gleiche gilt für Formeln, die quadratische Laufzeiten aufweisen.
Viele Grüße,
Bernd P
Darauf kann man durchaus antworten :-)
02.11.2018 07:58:47
lupo1
1. kann man die Formel anpassen. Das mit dem tatsächlichen "Nichtbedarf" eines gemittelten Medians war da ja schon beschrieben - das hat reinen akademischen Wert, mehr nicht (probiere 0,4999 oder 0,5001). Und andere Abweichungen zum jeweiligen Thema muss man halt selbst noch anpassen.
2. bei den quadratischen Laufzeiten hast Du recht. Das haben aber alle drei verschiedenen Tabellenfunktions-Ansätze auf Einzeldatenbasis miteinander gemein, also
TEILERGEBNIS(BEREICH.VERSCHIEBEN
MAX(SUMMEWENN
AGGREGAT(16
Von daher benötigt man sowieso VBA oder VBA-Functions. Oder - für Tabellen - kumulierte Werte, so dass dann auch ein VERGLEICH oder zumindest eine einfachere Formel ausreicht.
Ich habe neopa schon oft genug die quadratische oder sonstwie exponenzielle Laufzeit seiner (nicht nur AGGREGAT-) Formeln vorgeworfen, wobei er immer auf das eher "hobbymäßige" Volumen im jeweiligen Fragekontext verweist. Er lässt dabei z.B. auch nicht gelten, dass sich Tabellen mit der Zeit zu verlängern pflegen.
Daher sei Dein (und mein) Einwand immer wieder nachdrücklich genannt, und ich stimme dem auch ausdrücklich zu.
Auch WF scheint AGGREGAT - so wie ich - nicht sonderlich zu mögen (weil es eigentlich eine Sammelfunktion für Bestehendes ist, zuzüglich einer praktischen Fehlerumgehung und Filterberücksichtigung), aber ich vermute, dass er es neben den vielen anderen Lösungen mit exponenzieller Laufzeit bei xlf als Alternative noch aufnehmen wird. An manchen Stellen warnt er übrigens auch selbst durchaus vor dem Gebrauch.
Anzeige
Zum Sondermüll ein energisches Nein! Bzw.: Ja!
02.11.2018 08:18:54
lupo1
- ich möchte, dass Fehler sichtbar werden, damit ich darauf aufmerksam werde ("am offenen Herzen", da Daten in Tabellenkalkulationen leichter manipulierbar sind, als anderswo). Daher verwende ich z.B. WENNFEHLER fast nur mathematisch, nicht kosmetisch. Das spart mir Zeit. Klicki-Bunti kann ich anschließend noch am Tabellen-Frontend ("report") betreiben.
- ich mag keine Formeln mit Karosserie: =WENN(A1="";"";...), sondern in Centre-Pompidou-Optik mit "offenen Leitungen und Rohren", also: =... . Das ermöglicht schnellere "Plausi"-Prüfung.
- ich mag keine Formeln mit solitär abweichender Regelung B1: =WENN(ZEILE(B1)=1;0;INDEX(B:B;ZEILE()-1)))+A1 am Anfang oder am Ende von Daten, sondern ich will ein knallhartes B2: =B1+A2
Denn nur so kann ich Dein mal geäußertes Credo, alles müsse dokumentiert sein und man müsse sicher sein, dass eine Lösung vom Lösungsgeber auch ewig unterstützt werden könne, umgehen, denn das ist very time-consuming.
Anzeige
OT für WF: BULI-Tabelle aus letzten 5 Spieltagen
02.11.2018 09:51:53
lupo1
... also Tabelle so, als wäre es erst am 5. Spieltag losgegangen (aktuell sind die Ergebnisse des 9. Spieltags, somit Spieltage 5.6.7.8.9).
Einstellbar in B22 und T22.
https://www.ms-office-forum.net/forum/showpost.php?p=1896268&postcount=2
Wenn erwünscht, hänge ich die hier auch an.
Und wen interessiert das ?
02.11.2018 10:20:52
WF
mich null
Das einzige, was mal durch die Sportpresse geht, ist die Rückrundentabelle.
Die ist bei mir aufrufbar.
WF
War nur ein Angebot ...
02.11.2018 10:42:01
lupo1
... voll flexibel ist ja wohl besser, als nur eine zusätzliche Fragestellung im Differenzwege beantworten zu können. In dem verlinkten Thread interessiert es jedenfalls. Und Zeitungen kommen mit den unmöglichsten statistischen Aussagen, wie jeder weiß ("wie oft hat C.D. einen Löffel mit Zucker bei Heimspielen dabei gehabt?").
Außerdem könnten sich ja auch andere melden. Die sind aber vermutlich bei MSOF eh angemeldet.
Anzeige
AW: War nur ein Angebot ...
02.11.2018 11:03:32
Luschi
Hallo Excel-Fan's,
ich bin begeistert von Eurem Eifer zu Aggregat & Konsorten. Ich hoffe ihr freut Euch auch, was M$ hinsichtlich 'Dynamic Array Formulas' in Excel 365 für 2019 plant:
https://support.office.com/en-us/article/dynamic-array-formulas-in-non-dynamic-aware-excel-696e164e-306b-4282-ae9d-aa88f5502fa2
Da kann es einem ja GRAUEN - oder doch nicht?
fragt sich Luschi
aus klein-Paris
Nö, ist geil ... und folgt einfach nur GDocs :-)
02.11.2018 11:20:04
lupo1
Hierbei geht's doch in 1.Linie um die klassische …
02.11.2018 13:53:03
Luc:-?
…Aufgabe einer MxFml, mehrere Ergebniswerte auf 1× zurückzugeben, Luschi (& Lupo),
also das, was eine plurale MxFml gemeinhin macht. Das von MS gezeigte Bsp ist zu dürftig (E-Matrix), um daraus Schluss­folge­run­gen für singulare oder gar (den Wegfall) duale(r) MxFmln zu ziehen. Ansonsten scheint mir das Ganze doch nur eine direkte Aus­deh­nung allgemeiner Xl-Funktionsweisen (bspw bei benannten Fmln zu beobachten) auf den ZellRaum zu sein, für die zuvor - nicht ohne Grund! (von anderer Software ebenfalls mit SonderKennzeichnung verwendet) - die MxFmlForm erforderlich war. Das ist idR auch keine Aufgabe von Fktt, sondern des FmlText-Interpreters. Falls MS das generell auf FktsEbene übernehmen wollte, müsste das zu einer zusätzlichen General-Fkt*, die die Aufgabe der {} übernähme, führen (Lupos Einlassung zu GDocs deutet das an, wage ich aber zu bezweifeln). Es sieht doch eher nach Interpreter-Umstellung aus und das könnte zu ungewollten bzw unge­wohn­ten Effekten führen!
Ob nun eine generelle automatische Ausdehnung einer (ungekennzeichneten) MxFml auf volle ErgebnisGröße (wie bspw bei LO/OO­calc) erfolgt oder wie bisher nur auf einen markierten Bereich° ist dabei zwar zweitrangig, könnte aber bei Übernahme älte­rer Dateien im 1.Fall zu Fehlern führen. Insofern ist Deine Sorge, Luschi, nicht unbegründet!
* Das, was in GDocs gemacht wird, kann man auch in VBA pgmmieren. Bestimmte Xl-Fktt haben auch einen derartigen Effekt - den neopa auf die jeweilige Fml bezieht und diese deshalb dann „Matrixfunktion(alität)sformel“ nennt -, weil sie hierbei autonom (darin inter­preter-unabhängig) sind, bspw AGGREGAT. Ich arbeite zZ an Vglbarem, eine Basis-UDF für den Aufruf von Fktt differenter Provenienz an unterschiedlichen Standorten mit jeweils passender Methode, wobei es auch möglich ist, die Funktionsbreite der aufgerufenen Fkt zu erweitern, sowie nur Quell- oder auch Ergebnis­Daten zu korrigieren:
1.1 duale MxFml→ {=SUMME(INDEX(--O29:Q31;ZEILE(1:3);ZEILE(1:3))*1^ZEILE(1:3))
1.2 dazu einfache Fml→ =SUMME(fxBase(2;"@index";;O29:Q31;"°1e3";"°1e3"))
Beide Fmln ermitteln die Summe der Werte der Transponse-Diagonalen einer quadratischen Matrix mit ungerader ElementeAnzahl.
2.1 plurale MxFml→ {=VERGLEICH(AA55;INDEX(Y55:Z58;0;SPALTE(A:B));0)}
2.2 dazu einfacher→ {=fxBase(1;"@match";;AA55;"|Y55:Z58";0)}
Da das auch mit Datenfeldern möglich ist, sofern die ZielFkt diese zulässt, wäre das im sog Matrix-Fall auch ein Ersatz für AGGREGAT (Arg1=1…13).
° Bereits vor Jahren hatte ich die von einer physisch entkoppelten Subprozedur unterstützte UDF FlexArr geschrieben, bei der man die gewünschte Größe des ErgebnisFeldes einer als Argument übergebenen, matrixerzeugenden Fkt mit entsprd Argumenten festlegen kann.

🙈 🙉 🙊 🐵 Gruß, Luc :-?
„Die Intelligenzmenge ist auf diesem Planeten eine Konstante, die Bevölkerung nimmt aber zu!“ Auch deshalb informieren mit …
Anzeige
Für mich ist es ein ...
02.11.2018 14:13:28
lupo1
... "PQ-light" auf Formelbasis.
Es gab das doch immer schon auch über das Menü bei Excel, sei es Solver oder Was-wäre-wenn oder so.
MS löst sich nun endlich von den festen Matrizen und macht sie so dynamisch wie eine Pivot-Tabelle.
AW: War nur ein Angebot ...
02.11.2018 14:55:35
Luschi
Hallo Excel-Fan's,
hier gibt es weitere Infos & einen Link, und ein Whitepaper-Book von Bill Jelen, um sich zu informieren (leider nur in englisch, da sich die dt. Verlage weiterhin mit Krimskrams zu Excel 2019/365 beschäftigen):
https://www.mrexcel.com/products/excel-dynamic-arrays-straight-to-the-point/
Gruß von Luschi
aus klein-Paris
Anzeige
Das PDF ist angeblich sogar ne Weile kostenlos
02.11.2018 15:47:39
lupo1
... (vom Jelen, meine ich) ...
Was mir immer noch fehlt, ist die Zwischenspeicherung von Ergebnissen eines Teilausdrucks in einer Formel zur Weiterverwendung in einem anderen Formelteil derselben Formel. Das scheint ja unglaublich schwierig zu sein. Es würde ja schon reichen, wenn es nur von innen nach außen oder von links nach rechts ginge.
Das ist es mit VBA nicht, ...
02.11.2018 17:59:40
Luc:-?
…Lupo;
so etwas hatte ich mal benötigt und deshalb eine Sammel-UDF geschrieben, der quasi TeilFml-Ergebnisse übergeben wdn (vglbar mit einem diskontinuierlichen Bereich), die dann separat wiedergegeben bzw weiterverwendet wdn können.
Ansonsten liegt das natürlich an der Wahl der Gleichungs- statt einer Anweisungsform für die Notation von RechenOperationen. Mit Letzterer wäre das absolut problemlos…!
Luc :-?
Anzeige
... weil VBA eigene Bereiche adressiert, ...
02.11.2018 18:02:32
lupo1
... vermute ich.
Um den Sprung zu VBA nicht zu benötigen, wäre ein einfaches Funktionselement Put() und Get() schön (wie damals bei Longré).
wer oder was ist denn Longré? owt
02.11.2018 18:26:33
Daniel
Laurent Longré schuf MOREFUNC.XLL
02.11.2018 19:28:53
lupo1
https://www.youtube.com/watch?v=TAofPm4LCRc
... welches bis Excel 2007 unterstützt wurde.
https://ccm.net/download/download-24205-morefunc-macro-add-in-for-excel
scheint die beiden von mir angesprochenen Funktionen für die letzte Version jedoch nicht mehr anzubieten. Vielleicht waren die immer schon fehleranfällig oder absturzverursachend - ich selbst habe damals nur die Doku gelesen, war total geflasht, habe sie aber nie selbst ausprobiert.
Problematisch war vermutlich folgendes: Normale Tabellenformeln haben immer nur das Ergebnis der jeweils inneren oder linken Berechnung parat für den nächsten Zwischenschritt - mehr ist nicht nötig. Somit ist der Speicherplatz für Excel planbar. Greift aber nun der User mit PUT und GET ein, und das womöglich bei einer 1.000.000-Mal kopierten Formel, werden pro Zwischenspeicher z.B. 15 Byte fällig, also 15 MB zusammen - das zusätzlich zu den sowieso schon 15 MB der Formelwerte. Das bringt viele Unwägbarkeiten der Speicherinanspruchnahme mit sich.
Ein möglicher Weg wäre, diese Zwischenberechnung einfach nach oben zu limitieren und PUT und GET zu umgehen. Das bedarf aber vermutlich massiver Koordination eines C++-Programmierers, und daher hat das noch keiner gemacht.
Ein anderer Problempunkt ist, dass der User die beiden Funktionen an der richtigen Stelle innerhalb einer langen Formel einsetzen musste, Stichwort Bearbeitungsreihenfolge.
Und außerdem hätte Longré wohl zu viel neu machen müssen für die neue Excel-Welt, da alle Teilaspekte sich ab 2007 vergrößert haben. Daher seltsam, dass 2007 selbst noch unterstützt wurde. Vielleicht war es aber schon ziemlich buggy. Jmd., der 2007 noch im Einsatz hat, kann es ja mal ausprobieren.
Ich glaube, dass ich irgendwo noch ein älteres Morefunc habe. Das müsste ich mal bei meinem Excel 2000 ausprobieren.
Anzeige
Der mittlere Link
02.11.2018 19:34:28
lupo1
zeigt, dass PUT und GET 2007 doch noch drin waren: frz. DVAR und LVAR.
Anzeige
AW: aha, gut gesehen...
02.11.2018 19:53:10
Mullit
...lupo1, taucht dann auch im Download-Link auf, leider kann ich kein franz. und hatte das Addin auch noch nie im Einsatz, aber sauber...
Gruß, Mullit
Dank WENNFEHLER hat sich der Bedarf ...
02.11.2018 20:25:10
lupo1
von PUTV und GETV übrigens schon mal bestimmt ca. halbiert.
Aber es gibt doch immer wieder Funktionsteil-Wdh. wie hier (excel-center ist mittlerweile tot):
Sub EineMehrfachoperationErstellen() 'getestet unter xl2000 und xl2010
'gibt den nächsten Freitag in ungerader Kalenderwoche aus, jedoch mit Abstand minimal 3 Tage
'aus: http://www.excel-center.de/ _
foren/read.php?2,115167
(hier schon korrigiert!)
Workbooks.Add xlWorksheet
[A:B].NumberFormat = "[$-F800]dddd, mmmm dd, yyyy"
[A:B].ColumnWidth = 27
[A1,A4] = 42353 '2015 war ein Jahr mit 53. Woche: 2 ungerade Wochen hintereinander!
q = Chr(10) & "TRUNC((RC[-1]+10)/7)*7-1"
[B1].FormulaR1C1 = "=" & q & "+7-(" & q & "-RC[-1]>2)*MOD(TRUNC((" & q & "-DATE(YEAR(" & _
q & "+3-MOD(" & q & "-2,7)),1,MOD(" & q & "-2,7)-9))/7),2)*7"
[D1:E1,D4:E40].FormulaR1C1 = "=TRUNC((RC[-3]-DATE(YEAR(RC[-3]+3-MOD(RC[-3]-2,7)),1,MOD(RC[-3]-2, _
7)-9))/7)"
'auch hier Pölt-Formel: http://www. _
excelformeln.de/formeln.html?welcher=7
für Excel vor 2010
[A5:A40].FormulaR1C1 = "=R[-1]C+1"
[B3].FormulaR1C1 = "=R1C2"
[A3].CurrentRegion.Table ColumnInput:=[A1]
End Sub
(Code evtl beim Umbruch reparieren)
Anzeige
Wie man dem Jelen-Paper entnehmen kann, ...
02.11.2018 21:44:10
Luc:-?
…Luschi (& all),
hat's MS nun endlich geschafft, zu TextJoin auch das GgStück für Xl zu schaffen. Ansonsten ist darin vieles enthalten, was mich zT schon vor Jahren zu eigenen Arbeiten veranlasst hatte.
Ansonsten wird darin bestätigt, dass es sich bei den sog Dynamic Arrays um eine Erweiterung der Xl-Engine, also letztlich inkl des FmlText-Interpreters, handelt, nicht um eine separate Rahmen-Fml ala GDocs (evtl eher vglbar mit MatrixFmln in best Calc-Pgmm auf Linux-Basis). Damit läge meine neue UDF fxBase zwar auf dem Level einer RahmenFkt ala TEILERGEBNIS und AGGREGAT, ginge wohl aber über das der von GDocs (dem eher FlexArr entspräche, hätte das nicht noch ein paar Extras ;-]) hinaus.
So etwas wie das neue Sequence ist bei fxBase schon vorgesehen → als einfaches Notat der Form zahl{{d}|{e}{{+}|{-}}}zahl (vgl Bspp im anderen Thread, zu späterem ZeitPkt mehr).
Allerdings kann ich mich des Eindrucks nicht erwehren, dass es MS hier in 1.Linie um Vermarktung der Abo-Vs 365 geht und ggf Vor­lauf ggüber starker Konkurrenz (womögl auch Überflüssig­Machung von VBA-„Heimwerkern“). Da ich so etwas nicht benötige, bleibe ich bei meinen Kreationen, die in mancher Beziehung ohnehin über die neuen Angebote hinausreichen (aller VBA-Unkerei zum Trotz ;-]).
Luc :-?
Sind halt getrieben .. denn GDocs gibt den Weg vor
03.11.2018 07:15:51
lupo1
... ich habe zwar die Abo-Version, aber ich merke doch mein insgesamt langsam abnehmendes Interesse.
Immerhin kann man nun einige Dinge wirklich schön automatisch gestalten mit SORT/FILTER: Und sei es nur eine Buchhaltungs-Doppik (was in Access über SQL ging (inkl. MwSt-Ziehung, Skonto-Rechnung, KapESt- und SolZ-Nettoisierung und auch insgesamt Buchung auf Kostenstellen), seit einiger Zeit über PQ, da das ähnlich SQL funktioniert.
Die Abo-Version schickt die Dinge im Grunde nur experimentell vor. Anscheinend kann man MS jedenfalls noch nicht vorwerfen, die guten Dinge dann in der nächsten Fest-Version zu übernehmen. Obwohl es in manchen Fällen dann auch erst deren übernächste Version ist. TEXTJOIN war -2016 noch nicht dabei (-2019 wohl schon), aber wurde in Excel-Online und -365 zumindest unmittelbar nach Erscheinen nach -2016 gezeigt.
Ich meine, dass steve1da oder shift-del einen amazon- oder eBay-Link hatten, wo man die Abo-Home-Version für 70 statt 100 Euro bekommen kann. Das ist dann ein fairer Preis, "alldiweil" man das gesamte Office dann legal auf 5 Geräten nutzen kann. Die Abo-Personal-Version erlaubt nur eine einzelne Installation.
Statt AGGREGAT müsste eigentlich auch {=QUANTIL()}
02.11.2018 11:24:11
lupo1
... die Aufgabe erfüllen, da, wie schon mehrfach beschrieben, AGGREGAT nur eine Zusammenfassung schon bestehender Funktionen ist.
Ich habe es jetzt nicht ausprobiert.

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige