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

Liste abfragen

Liste abfragen
17.11.2016 19:40:58
Max
Guten Abend,
stehe vor einem kleinen Problem.
Ich habe eine einfache Liste mit Vorname,Nachname,Geburtsdatum, Bezahlt.
Mit Hilfe der Min oder Max - Funktion kann ich den ältesten - jüngsten Teilnehmer suchen. Ist klar. Ich hätte aber gerne, dass nicht nur das Datum angezeigt wird, sondern in den nächsten Zellen der Vorname und in der übernächsten der Nachname.
Des weiteren hätte ich gerne darunter alle Leute gelistet, die nicht bezahlt haben.
Habe einmal eine Datei hochgeladen zur besseren Erklärung!
https://www.herber.de/bbs/user/109522.xlsx
DANKE für euer Hilfe - LG Max

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

Betreff
Datum
Anwender
Anzeige
AW: Liste abfragen
17.11.2016 20:38:54
UweD
Hallo
Alles aufgebaut auf dem Datum. Problem, wenn mehrfach vorhanden..

Tabelle1
 ABCD
1VornameNachnameGebbezahlt
2KarinKlang10.04.2001ja
3KarlMustermann12.12.1999nein
4Susi Frust13.11.1998ja
5Martin Schlau23.01.2002nein
6    
7    
8    
9    
10Max23.01.2002Martin Schlau
11Min13.11.1998Susi Frust
12    
13    
14    
15Folgende Teilnehmer haben bezahlt   
16    
17VornameNachnameGebbezahlt
18Martin Schlau23.01.2002nein
19KarlMustermann12.12.1999nein

verwendete Formeln
Zelle Formel Bereich N/A
B10=MAX(C2:C5)  
B11=MIN(C2:C5)  
C10:C11=INDEX($A$2:$A$5;VERGLEICH($B10;$C$2:$C$5;0))  
D10: D11=INDEX($B$2:$B$5;VERGLEICH($B10;$C$2:$C$5;0))  
A18:A19=WENNFEHLER(INDEX($A$2:$A$5;VERGLEICH($C18;$C$2:$C$5;0));"")  
B18:B19=WENNFEHLER(INDEX($B$2:$B$5;VERGLEICH($C18;$C$2:$C$5;0));"")  
C18:C19=WENNFEHLER(AGGREGAT(14;2;($C$2:$C$5)/($D$2:$D$5="nein");ZEILE(A1));"")  
D18: D19=WENNFEHLER(INDEX($D$2:$D$5;VERGLEICH($C18;$C$2:$C$5;0));"")  
http://excel-inn.de/dateien/vba_beispiele/tabellenanzeige_in_html_addin.zip
http://Hajo-Excel.de/tools.htm
XHTML-Tabelle zur Darstellung in Foren, einschl. der neuen Funktionen ab Version 2007
Add-In-Version 21.10 einschl. 64 Bit


LG UweD
Anzeige
coole Formeln
17.11.2016 21:23:29
Thomas
Hallo Max,
deine AGGREGATFormel ist echt cool die packe ich mir ins Archiv.
besten dank auch von mir.
mfg thomas
Wohl eher 'Hallo Uwe'! Gruß owT
17.11.2016 23:27:15
Luc:-?
:-?
sowas hat neopa C (Werner) mir mal gezeigt
18.11.2016 09:33:00
UweD
.. seitdem finde ich die auch Klasse
AW: Liste abfragen
18.11.2016 09:11:33
Max
HERZLICHEN DANK .....SPITZE :-)
gern geschehen owT
18.11.2016 09:31:34
UweD
AW: aber Achtung! das kann zu Problemen führen ...
18.11.2016 17:34:43
...
Hallo Max,
... die INDEX() und VERGLEICH()-Formeln sowohl in ZC10:D11 als auch in A18:B# gelten nämlich nur im konkreten Beispiel bzw. nur dann, wenn es in Deiner Liste keine Personen gibt, die am gleichen Tag geboren sind.
Noch etwas unproblematisch sind C10:D11, weil da "nur" evtl. weitere Personen nicht als Älteste bzw. Jüngste gelistet werden.
Aber in A18:B### können dadurch nicht alle und vor allem völlig falsche Personen als Schuldner gelistet werden!
Eine Formellösung dafür gibt es natürlich auch. Ich würde hierfür auch AGGREGAT() einsetzen.
Gruß Werner
.. , - ...
Anzeige
Ich würde die Formel gerne verstehen ...
18.11.2016 21:44:02
Ilka
und würde mich sehr freuen über eine Erklärung dieser Formel.
Guten Abend an alle,
ich rätsele schon recht lange an dieser Funktion Aggregat und dieser Prozess ist noch nicht zu Ende.
Es wäre schön, wenn ich genau zu dieser Formel eine umfassende Erklärung erhalten würde.
Alle anderen Formeln sind klar.
Für alle Erklärungen besten Dank im Voraus.
Gruß Ilka Maria
AW: dies ist etwas davon abhängig,
20.11.2016 11:05:00
abhängig,
Hallo Ilka Maria,
... welchen Kenntnisstand Du Dir schon bzgl. Excel-Formelfunktionsweisen angeeignet hast.
Wenn Du wirklich nur Basiskenntnisse hast, würde ich hier zu viel Zeit aufwenden müssen, um es einigermaßen verständlich erklären zu können.
Welche Erfahrungen im Verstehen von Excelformeln bringst Du also wirklich schon mit?
Gruß Werner
.. , - ...
Anzeige
Tja, da fehlt doch noch etwas,
20.11.2016 14:19:48
Ilka
was Du, Werner, bestimmt ergänzen kannst.
Alle anderen Funktionen, die in diesem Beispiel verwendet wurden, sind mir vertraut, damit komme ich klar, aber mit Aggregat() habe ich noch nicht gearbeitet, habe es aber fest vor.
Die Funktion Aggregat gibt es wohl erst ab Version 2010? Vielleicht täusche ich mich auch in diesem Punkt.
Interessant wäre zu wissen wie man diese Aufgabe o h n e Aggregat gelöst hat.
Vielleicht hilft mir dies und ein Hinweis auf eine geeignete Literaturstelle weiter. Mit der Standardfunktionsbeschreibung von Microsoft habe ich Schwierigkeiten.
Also, es wäre schön, wenn ich diese Formel verstehen würde.
Besten Dank im Voraus.
Gruß
Ilka Maria
Anzeige
AGGREGAT gibt's seit Xl14/2010, ...
20.11.2016 19:38:50
Luc:-?
…Ilka Maria,
dabei handelt es sich um eine Verteiler- bzw Container-Fkt, die ihr(e) HptArgument(e) (3ff) nach Vorgabe ihres 2.Arguments überprüft und ggf bereinigt bevor die per 1.Argument bestimmte Fkt auf diese(s) angewendet wird. Es handelt sich also um eine Erweiterung der alten XlFkt TEILERGEBNIS um das neue 2.Argument und einige zusätzliche Fktt (1.Argument beider XlFktt) ab Nr 12 (MEDIAN) bis Nr 19, wobei ab Nr 14 als 3.Argument auch ein Datenfeld (als Matrix­Konstante oder TeilFml, deren Ergebnis dann verwendet wird) angegeben wdn kann, was aber die meisten Argument2-Einstel­lungen ausschließt.
Ab Argument1=14 kann nur ein HptArgument (3ff) angegeben wdn. Das 4. ist dann für die Klasse (k) bzw das Quartil reserviert, was diese Fktt benötigen.
Weil MS das so zweifelhaft konstruiert hat, benutzen einige Fml-Cracks Arg1=14/15, entweder um auf MatrixFmlForm verzichten oder aber Datenfelder verarbeiten zu können, was aber idR etliche „Klimmzüge“ erfordert, die die Fmln verlängern und nicht oW einsichtig sind.
Mit meiner UDF AggregateXk kann diese sog MatrixForm (ab Arg1=14) auf alle integrierten Fktt ausgedehnt wdn. Außerdem gibt's noch eine reine Bereit­Stellungs­Fkt, Nr 0, und die Möglich­keit, auch hier (trotz UDF) auf MatrixFml­Form verzichten zu können, wenn man Arg1 negativ angibt.
Feedback nicht unerwünscht! Gruß, Luc :-?
Besser informiert mit …
Anzeige
AW: zu Deiner neuen Frage ... und ...
20.11.2016 20:49:33
...
Hallo Ilka Maria,
... Du wolltest wissen, "wie man Aufgabe o h n e Aggregat löst"
Viele User würden in Excelversionen ab 2007 die "klassische" Matrixformel einsetzen:
in D18: {=WENNFEHLER(KGRÖSSTE(WENN(D$2:D$9="nein";C$2:C$9);ZEILE(C1));"")}
Mehr dazu sieh mal hier: http://www.online-excel.de/excel/singsel.php?f=26. Dies solltest Du zumindest nachvollziehen können, dann könntest Du auch nachfolgendes eher nachvollziehen.
Ich würde anstelle der klassischen" Matrixformel alternativ nachfolgende längere Formel (aber ohne {}) vorschlagen, weil ich damit schon etwas auf Dein eigentliches Anliegen überleiten kann.
In D18:

=WENN(ZEILE(C1)>ZÄHLENWENN(D$2:D$9;"nein");"";KGRÖSSTE(INDEX(C$2:C$5*(D$2:D$5="nein"););ZEILE(C1))) 
einsetzen. Diese Art Formel findest Du mW wohl auch nirgends erklärt. Ich bezeichne diese als Matrixfunktion(altät) sformel , da die auszuwertende Matrix hier mit der Matrixversion der INDEX() -Funktion in Kombination mit anderen Funktionen behandelt wird und dies eben keinen{}-Formelabschluss benötigt. Diese Formel kann auch in älteren Excelversionen eingesetzt werden.
Damit habe ich eine Überleitung zur AGGREGAT()-Formel (möglich erst ab Excelversion 2010) in D18:
=WENNFEHLER(AGGREGAT(14;2;$C$2:$C$9/($D$2:$D$9="nein");ZEILE(A1));"")
kürzt die Formel wesentlich ab. Sie ist ebenso eine Matrixfunktion(altät)sformel , da sie ebenfalls auf der Matrixversion der AGGREGAT()-Funktion beruht. Matrixfunktion(altät)sformel "arbeiten" intern ähnlich wie die klassischen Matrixformeln, benötigen aber keinen {}-Formelabschluss. Und im Gegensatz zu Luc's UDF-Funktion kann die Datei damit auch weiterhin als XLSx gespeichert und genutzt werden (in einigen Büros sind XLSm Dateien nicht zugelassen)
Die Funktion AGGREGAT() ist ursprünglich mit einer anderen Zielrichtung programmiert wurden und somit leider auch nicht umfassend, wie ich es mir gewünscht hätte. Aber man kann mit dieser Funktion in entsprechender Konstruktion schon sehr viel erreichen, was vorher ohne klassische Matrixformel nicht denkbar gewesen wäre. ich betrachte mich in der spez. Anwendung dieser Funktion als "Pionier".
Die Bedeutung der ersten beiden Argumente der AGGREGAT()-Funktion kannst Du in der MSO-Hilfe nachlesen. Uwe hat für das zweite Argument die 2 genutzt. Ich bevorzuge die 6, welches mir in etwas komplexeren Formeln die Möglichkeit gibt AGGREGAT() auch zu schachteln. Dies ist hier nicht nötig, somit reicht die 2 als zweites Argument.
Das "Kernstück" der Formel ist $C$2:$C$9/($D$2:$D$9="nein") in Verbindung mit dem 2. Argument. Denn die meisten anderen Formeln, wo intern ein Fehlerwert "produziert wird ergebn als Ergebnis grundsätzlich auch den Fehlerwert. Wenn hier die Nedingung ($D$2:$D$9="nein") nicht erfüllt ist und sich somit für den Quotienten intern (!) ein #DIV/0!-Fehlerwert erzeugt wird, schert sich AGGREGAT() darum überhaupt nicht. Das ermöglicht eben genau dadurch die gewünschten Auswertungsergebnisse für den Fall, das vorgenannte Bedingung erfüllt ist. Das WENNFEHLER() bedarf es erst für den Fall, dass kein weiteres Auswertungsergebnis mehr ermittelt werden kann.
Gruß Werner
.. , - ...
Anzeige
Du kannst dir sicher denken, ...
21.11.2016 03:14:13
Luc:-?
…Werner,
dass ich dazu einige Einwände haben werde.
1. „Matrixversion“ der INDEX-Fkt:
Zwar steht bei der 1. und am häufigsten genutzten Variante von INDEX als 1.(Hpt-)Argument Matrix statt Bezug wie in der 2.Variante, aber das hat mit der sog MatrixVersion von AGGREGAT nur insofern zu tun, als man auch in dieser INDEX-Variante, ebenso wie bei AGGREGAT, Datenfelder und ZellBezüge benutzen kann, wobei ZellBezüge auch eine sog Matrix* bilden können. Darauf kommt es hierbei also nicht an, sondern darauf, dass auch Datenfelder aus Ausdrücken (Matrix­Konstanten oder Ergebnisse von TeilFmln) benutzt wdn können. Bei INDEX-Variante2 sind nur ZellBezüge sinnvoll, weil nur diese diskret, also unzusammen­hängend sein können (diskrete Datenfelder gibt's nicht).
2. Diese Art Formel findest Du mW wohl auch nirgends erklärt.
Ich habe dazu schon mehrfach Statements abgegeben wie du weißt, man findet also einiges im hiesigen Archiv. Inzwischen sollte auch endgültig klar sein, dass die sog Matrixfktionalität keine Fml-Eigenschaft sein kann, sondern nur eine gewisser verwendeter Fktt. Von deren Pgmmierg allein hängt nämlich ab, ob dieser oder andere Effekte, die sonst von der Xl-Steuerung im Rahmen der Fml-Analyse und -Optimierung geleistet wdn, auch ohne letztere zustande kommen (vgl dazu den HalloWenn-Thread!).
3. Eine UDF-Anwendung in einer ZellFml erfordert, im Ggsatz zur Verwendung alter XLM-Fktt in benannten Fmln, nicht zwingend die Speicherung der Datei als .xlsm/b! Das ist nur erforderlich, wenn die Datei auch deren Pgm enthält. Man kann aber auch die Personal.xlsm oder ein AddIn (.xlam) dafür verwenden. Allerdings muss dann sicher­gestellt sein, dass jeder Nutzer der anwendenden Datei auch über das AddIn verfügt. Dateien, die extern weiter gegeben wdn sollen, sollten ohnehin nur im Ausnahmefall Fmln enthalten.
4. Pionier
Das bist Du in gewisser Weise (Häufigkeit!) schon, Werner, besonders hier, aber der mE 1.Anwender war ShiftDel, noch bevor ihm Xl14/2010 überhpt dauerhaft zV stand.
5. Argument2 = 2 oder 6
Hier verwechselst Du wohl die beiden Argument-Werte in Funktion u/o Auswirkung. Im Zusammenhang mit Datenfeldern ist nur die 6 zur Ignorierung von Fehlern sinnvoll, alle anderen Werte sind wirkungslos, weil sie zwingend die Angabe eines ZellBezugs erfordern (schon ein voran­gestelltes -- macht aus einem Zell­Bezug ein Daten­feld!)*. Mit 6 wdn aber auch keine Fehler ignoriert, die erst bei Anwendung der Fkt entstehen (besonders #NV)!
* Insofern ist die Bezeichnung Matrix hierfür eher irreführend!
Gruß, Luc :-?
Anzeige
AW: ... nicht gedacht sondern erwartet ...
21.11.2016 11:09:55
...
Hallo Luc,
... aber Du sicherlich auch meine.
zu 1.) Auch nach zweimaligen Lesen hat sich mir nicht erschlossen, was Du damit belegen willst.
zu 2.) "Statements", Erklärungen etc. in Forenbeiträgen können nützlich sein, vorausgesetzt man findet sie. Außerdem sind diese meist außerhalb jeglicher "offizieller" Kritik, weil nicht viele diese lesen und diese oft auch sehr spezifisch auf den thread zugeschnitten sind.
zu 3.) Deine Aussage hierzu ist natürlich richtig, doch in einem Büro wo nicht zertifizierte XSLm-Dateien nicht zugelassen sind, werden auch keine nicht zertifizierte UDFs bereitgestellt.
Ob das sinnvoll ist oder nicht, steht dabei hier nicht zur Diskussion.
zu 4.) Deiner Aussage hierzu muss ich erneut widersprechen. Ein Pionier ist nicht Jemand, der als Erster etwas "entdeckt", realisiert oder propagiert. Dieser Anmaßung hätte ich mich auch nie bedient.
Unzutreffend ist Deine Aussage auch bzgl. Detlef (ShiftDel). Wenn überhaupt jemand erster Anwender war, dann höchstwahrscheinlich jemand aus dem englischsprachigen Bereich. Da Detlef diese "Szene" im Gegensatz zu mir verfolgt, hat er teilweise in deutschsprachigen Foren schon entsprechende Hinweise auf AGGREGAT()-Formeln gegeben. Das was er aber selbst im Frühjahr dazu auf unserer damaligen Diskussion in einem thread im Online-Excel-Forum als Beispiele angegeben hat, hatte aber mit der Einsatzart, wie ich sie propagiere, kaum etwas zu tun.
Später hatte ich festgestellt, dass Andreas Thehos diesbzgl. schon eher als erster deutschsprachiger Anwender in Betracht zu ziehen ist.
Doch bzgl. Intensität der Werbung für die spez. Anwendung der AGGREGAT()-Formeln war und bin ich ein Pionier in den von mir genutzten deutschsprachigen Foren. Diese Formelart ist für mich ein Repräsentant der von mir als Matrixfunktion(alität)sformel bezeichneten Formeln (wie bereits geschrieben und auch aufgezeigt, gibt es davon nicht nicht AGGREGAT()-Formeln). Mittlerweile feststellen konnte ich, dass auch von den bekannten Excelnutzern Einige, wie z.B. die beiden Sepps, Steve1da ... jetzt z.B. auch Uwe sich diese Formelart zu eigen gemacht haben. Andere dagegen halten sich zurück und Andere bevorzugen weiterhin die klassischen Matrixformeln.
zu 5.) Dieser Aussage muss ich widersprechen. Gerade zur Ignorierung von Fehlerwerten ist die Funktionsgruppe in Erweiterung von TEILERGEBNIS() u.a. geschrieben worden. Diese Funktionalität (Ignorierung von Fehlerwerten) beinhaltet z.B. die VERWEIS()-Funktion von Haus aus. Für die AGGREGAT() - Funktion wurde mit einer entsprechenden Option im 2. Argument lediglich ein "Schalter" eingebaut, der dies ermöglichen kann oder eben auch nicht soll. Auch ein intern übergebenes oder erzeugtes #NV! wird ignoriert, nur fällt mir dazu momentan kein sinnvolles Beispiel ein, wo das auch derartig benötigt wird. Aber theoretisch ist dies relativ einfach nachvollziehbar z.B. für ... ZEILE(Z1:Z9)/(G1:G9=VERGLEICH("etwas"; N1:N9;));...
Gruß Werner
.. , - ...
Anzeige
Da Du es nun ebenfalls erwartest, ...
21.11.2016 19:21:04
Luc:-?
…Werner,
meine Re-AW: ;-]
1. soll heißen, dass die Bezeichnung Matrix zur Varianten­Unter­scheidung unglück­lich gewählt ist, denn beide Fktt, INDEX und AGGREGAT können recht­eckige Matrizen in Form von Zell­Bereichen oder Daten­feldern ver­arbeiten, wobei Letz­teres bei AGGREGAT nur für die inte­grierten Fktt ab Nr14 gilt, obwohl auch die anderen inte­grierten Fktt das von Hause aus könnten. INDEX kann das aber generell. Beide Fktt können aber auch diskrete, also aus mehreren Teil­Bereichen zusammen­gesetzte (Gesamt-)Bereiche ver­arbeiten (bei AGGREGAT sofern die inte­grierten Fktt das ebenfalls können). Die Bezeich­nung als Matrix­Variante kenn­zeichnet dies also nicht hin­reichend und ver­leitet eher zu falschen Schluss­folge­rungen.
Es gibt allerdings auch Arten von Datenfeldern, die keine rechteckige Matrix bilden (in gewisser Weise ein Pendant zu diskreten Bereichen, obwohl hier immer ein gewisser Zusammen­hang bestehen muss - entweder der Zeilen oder der Spalten -, bei diesen Bereichen aber nicht) und deshalb nicht oW auf Xl-Zell­Bereiche abbild­bar sind.
2. Dein Argument ist natürlich unbestritten, wobei meine Statements allerdings allge­meinerer Natur waren und meist sind. Jede Fml bildet einen Berech­nungs­Algo­rithmus in Text­form ab. Das erkennt man daran, dass die 7-8 Zell­Eigen­schaften, die den wert­bezo­genen Inhalt einer Zelle abbilden, stets alle einen beliebigen einge­gebenen Text anzeigen, wobei die Eigen­schaft .Text diesen unter Anwen­dung der Eigen­schaft .Number­Format anzeigt. Aber nur, wenn dieser Text mit einem = beginnt, wird er auch als Fml betrachtet und vom Fml-Inter­preter der Xl-Berech­nungs­Steuerung behan­delt, wobei der auf die 3 Eigen­schaften zugreift, die die Fml in Original-US-Notation zeigen. Eine davon wird aller­dings nur wirk­sam, wenn die ZellFml als Matrix­Fml abge­schlossen wird, eine andere, wenn die Zell­Adressen in Z1S1-Schreib­weise vor­liegen (evtl aber auch gene­rell). Die Bezüge von Namen sind dahingg stets Fml­Texte, denen natur­gemäß die Eigen­schaft .Text fehlt, weil sie ja auch kein .NumberFormat haben. Dafür gibt es 4 der 5 fml­bezo­genen Eigen­schaften (Matrix­Fml fehlt, weil hier generell alles berechnet wird) und eine zusätz­liche, die bei ein­fachen (bzw Listen von) Ver­weisen direkt auf die zuge­hörigen Objekte refe­renziert. Liegt so etwas nicht vor, liefert die Abfrage dieser Eigen­schaft einen Fehler.
Bei RegelFmln bedingter Formatierung ist das ähnlich, nur noch weiter einge­schränkt. Der Fml-Inter­preter arbeitet also in vollem Umfang nur bei Zell­Fmln, ansonsten mit einge­schränktem Wirkungs­Spektrum.
Ein FmlText kann ganz simpel aufgebaut sein, zB =A1+A2+A3. Hier gibt es nichts, woran eine Matrix­Funk­tiona­lität fest­gemacht wdn könnte, die Auf­lösung und Berech­nung obliegt allein dem Interpreter, der daraus (in pol­nischer Notation) so etwas wie + wertA1 wertA2 wertA3 machen könnte! Anders sieht es aus, wenn der Name einer Fkt auf bestimmte Weise in den Text einge­bunden wurde, zB =SUMME(A1:A3). Hier ruft der Inter­preter die (in eine DLL einge­bundene) Fkt sum auf und über­gibt ihr die Refe­renz auf den Zell­Bereich zur Ver­arbeitung. Das Ergebnis wird an das Inter­preter-Pgm rück­ge­liefert.
Bei kom­plexeren Fmln kann auch in Teil­Berechnungen, die auch bei Mehrfach­Notation idR nur 1× erfolgen dürften, zer­gliedert wdn. Dabei können auch ganze Alter­nativ­Stränge ent­fallen (vgl WENN). Das meint MS wohl mit Fml­Optimierung.
MS hätte auch eine andere Notationsform als die vorliegende, an mathe­matische Fml­Notation ange­lehnte Dar­stellung wählen können. Das hätte auch komplexere Algo­rithmen bei gleich­zeitig ein­facherer Kon­struktion, Dar­stellung, Nach­voll­zieh- und Inter­pre­tier­bar­keit erlaubt, zB +A;A:=A1:A3 (Abar­beitung von rechts nach links). Hier­bei hätte stets eine Summe-Fkt ange­wendet wdn können, nach­dem ggf zuvor der Bereich von Fehler­Werten bereinigt wurde, die im ein­fachen Additions­fall natur­gemäß eine Sum­mierung ver­hindern. (An so etwas arbeite ich ggw und komme darauf zu gege­bener Zeit zurück.)
3. Um die Richtigkeit ging's mir hierbei primär. Wer .xlsm/b-Dateien generell nicht zulässt, verzichtet auch auf Prozess­Auto­mati­sierung, möglicher­weise auch auf ganze Projekte und ver­langt somit von seinen Mit­arbeitern ggf edv-stein­zeit­liche Hand­arbeit. Aber das steht hier ja tat­sächlich nicht zur Debatte, obwohl man AddIns ja auch zerti­fizieren (lassen) könnte.
4. Deine Definition von Pionier liegt im Rahmen der Möglich­keiten. Aller­dings meint WP dazu, unter einem Pionier … versteht man im Bereich Forschung einen Menschen, der auf einem bestimmten Gebiet eine Vor­reiter­rolle einnimmt, der etwas Bahn­brechendes geleistet und damit weiteren wissen­schaft­lichen Arbeiten und Erkennt­nissen den Weg geebnet hat. In anderen Anwendungs­fällen ist er ein Weg­bereiter, was auf Deinen Einsatz für AGGREGAT, den man ja tat­sächlich auch, Dir folgend, als Werbung bzw Propaganda (noch dazu für eine bestimmte Ein­satz­form!) sehen kann, durchaus zutrifft → zwar nicht der Erste auf dem Mars, aber so etwas wie sein Terraformer… ;-]
Demggüber haben professionelle MS-Office-Dozenten ein eher beruf­liches Inter­esse daran, stets auf dem neuesten offi­ziellen Stand zu bleiben, ver­mitteln aber idR auch nicht mehr als diesen. Ein tieferes Durch­dringen solcher Mög­lich­keiten ist von ihnen eher nicht zu erwarten.
5. Widerstand(/-spruch) ist zwecklos! Wogegen denn auch?! Bei 2 und 6 ging's in Deinem AW-Text für Ilka Maria tat­sächlich etwas ver­quer und das, was Du machst und wofür Du AGGREGAT überhpt in dieser Form ver­wendest, ver­langt ja stets Arg2=6 (von anderen Argument-2-Werten wird hier nur dieser Teil wirk­sam, alles Andere wird igno­riert)! Und diese bereits vor­handenen (oder ggf während der Argu­ment-3-Berech­nung ent­stehenden) Fehler wdn auch eli­miniert, nicht aber solche, die erst nach Abschluss der AGGREGAT-Berech­nung als solche sicht­bar und wirk­sam wdn, zB generelles #NV für fehlende Daten, was bei 1zel­ligen Fmln wohl nur auf­tritt, wenn Bereichs-/Daten­feld­Grenzen über­schritten wdn.
Gruß, Luc :-?
Anzeige
AW: nenee; aber ich hatte damit gerechnet ...
22.11.2016 19:48:10
...
Hallo Luc,
... ich wollte und will hier keine "hochwissenschaftliche" Diskussion führen sondern ursprünglich der Bitte von Ilka Maria nachkommen. Gegen einen Meinungsaustausch hab ich natürlich keine Einwände.
zu 1) das die Matrixversion für AGGREGAT() nur für Funktionen ab Nr 14 gilt steht in der MSO-Hilfe. Für meine spez. Einsatz von AGGREGAT() benötige ich fast ausschließlich auch nur die 14 und 15. Ich hab natürlich schon des öfteren in Beiträgen bedauert, dass die Funktonprogrammierer diese Beschränkung derart vorgenommen haben. Doch was hilfst, dies ist Realität und mit dieser gehe ich in meinen Formellösungen um bzw. baue darauf auf.
zu 2.) Dazu hier mal folgendes: Ich hab noch nie einen Beitrag gelesen, der die "Frank-Kabel-Formel" =VERWEIS(2;1/(..."");...) als solche bzw. deren Erklärungen kritisiert hätte bzw. die dort angewendete Methode als "Klimmzug" oder ähnlich kritisiert hätte. Dies übrigens auch nicht bzgl. meiner auf vorgenannter basierenden aber erweiterten: =VERWEIS(9;1/(...)/(...)... - Formeln (mittlerweile sicher auch schon einige Hundert). Auch diese Formelart bezeichne ich als Matrixfunktion(alität)sformel und auch diese nutzen prinzipiell die gleiche "Technologie", wie die die von mir propagierten AGGREGAT()-Formeln, nur das deren Basisfunktion VERWEIS() eben ohne einen zusätzliche "Optionsschalter" die dortigen internen Fehlerwerte ignorieren kann. Und genau die Arbeit mit den "vorsätzlich" erzeugten internen Fehlerwerte ist ja eigentlich bei beiden Formelarten das A und O.
zu 3.) Die Realität ist nun mal widersprüchlich. Es wird meiner Kenntnis nach noch auf ganz anders verzichtet und im Gegensatz dazu anders erlaubt bzw. eingesetzt. Weder Du noch andere werden das ändern können.
4.) Hier dazu nur noch soviel. Ich hatte in meiner Erstaussage "Pionier" in Hochkomma gesetzt. Ich bin kein Wissenschaftler sondern Hobby-Excelformelianer.
5.) Doch, Deinen Aussagen hierzu muss ich besonders widersprechen. Zunächst, ich kann beim besten Willen nicht erkennen, wieso meine Aussagen bzgl. des 2. Arguments "tat­sächlich etwas ver­quer" gewesen wären. Ich widerspreche aber vor allem, dass "stets Arg2=6" notwendig sei. Möglicherweise hast Du übersehen, dass ich hier im thread die AGGREGAT()-Formel von Uwe eingebracht wurden war und ich dessen Originalschreibweise (mit der 2) begründet beibehalten hatte. Nochmal, ich hätte zwar stereotyp die 6 als zweites Arg. in der Formel geschrieben, aber die 2 als zweites Argument war und ist im konkreten Beispiel ausreichend.
So, von meiner Seite würde ich hier auch keine weiteres Ping-Pong-Diskussion mehr wollen, möchte aber nicht den Anschein erwecken, dass ich das letzte Wort haben möchte.
Auf jedenfalls kannst und wirst auch Du mir nicht ausreden, dass ich die spez. AGGREGAT()-Formeln als eine der mächtigsten und vielseitigsten reinen Formellösungsart halte und deren Anwendung auch weiterhin bewerben werde.
Jetzt bedauere ich nur noch, das der threaderöffner (Max) nicht auf meinen ausdrücklichen Warnhinweis (in meinem ersten Beitrag hier im thread) reagiert hat, warum auch immer.
Und unverständlich ist mir vor allem, dass sich Ilka Maria nicht wenigstens noch einmal zu Wort gemeldet hat. Denn Formellösungen, welcher Art auch immer machen mir Spaß, aber Erläuterungen und Erklärungen dazu viel, viel weniger. Weil diese machen meist nur Arbeit, sind echte Zeitfresser und bereiten einen dann mir oft zusätzlichen Aufwand. Und zwar deswegen, weil ich mich dann in nicht immer nützlichen Diskussionen zeitlich verliere. Ich werde mich diesbzgl. künftig mehr beschränken wollen/müssen.
Gruß Werner
.. , - ...
Ja, die Ilka Maria hat viell unsere Diskussion ...
22.11.2016 20:46:40
Luc:-?
…verschreckt, Werner… ;-)
Hier jetzt nur noch soviel:
Zu 1…3 habe ich erstmal alles gesagt, wobei zu 2. evtl hinzuzufügen wäre, dass ein Text, auch als Fml, keinerlei irgendwie geartete Fktionalität besitzen kann. Die kann immer nur das Pgm haben, das diesen Text interpretiert (und für eine MatrixFktionalität braucht's halt bestimmte An-/Ein­gaben!), oder aber ein nach­geordnetes Pgm, wie zB eine Fkts­Prozedur.
Zu 4. schien mir Pionier (ob mit oder ohne '') in seiner eigentlichen Bedeutung zu „einmalig“ zu sein, um Deinen Dauer­Einsatz an der AGGREGAT-„Front“ ange­messen zu würdigen… ;-)
Zu 5.: …aber die 2 als zweites Argument war und ist im konkreten Beispiel ausreichend
Ausreichend kann nur sein, was weniger als etwas Vglbares beinhaltet. 2 beinhaltet aber mehr als 6. Und dieses Mehr ist bei Ein­satz von Daten­feldern als Argument3 eben nicht erforderlich, weil ohnehin wirkungslos. Ausreichend ist demzufolge die 6, nicht die 2. Nach dem reinen Zahlenwert kann hierbei nicht gegangen wdn, weil der nur aus einer weit­gehend system­losen Durch­Numme­rie­rung der Möglich­keiten resultiert.
Gruß, Luc :-?
AW: 2 oder 6, dies sehe ich nach wie vor anders...
23.11.2016 10:47:43
...
Hallo Luc,
... die 2 als zweites Argument bedeutet laut MS-Hilfe:
"Fehlerwerte, geschachtelte TEILERGEBNIS- und AGGREGAT-Funktionen ignorieren" und schränkt somit die Funktionalität weiter ein als die 6, denn diese ignoriert laut MS-Hilfe lediglich Fehlerwerte. Somit ist damit, die aus meiner Sicht die allgemeinere Funktionsanwendung möglich, aber im konkreten Beispiel führen beide Optionswerte zum gleichen Ergebnis.
Gruß Werner
.. , - ...
Wieso soll das eine EINSCHRÄNKUNG der ...
23.11.2016 13:06:41
Luc:-?
…Fktionalität sein, Werner,
steht das ganze Argument2 doch für zusätzliche Fktionalitäten, nämlich die Kontrolle der QuellDaten auf bestimmte Eigenschaften! Und die sind im Falle von 2 nun mal zahlreicher als im Falle von 6, wobei diese über die reine Fehler­Erkennung hinaus­gehenden Fktiona­litäten im Falle von 2 bei einem Datenfeld als Argument3 nunmal ohne Wirkung bleiben und deshalb unnötig sind.
Mit Deiner Argumentation stellst Du diese einfache (Sprach- und Verfahrens-)Logik auf den Kopf. Geh' doch einfach mal davon aus, was das RahmenPgm von AGGREGAT in beiden Fällen leisten muss! Das Argument3 wird ja bereits berechnet vom Fml-Interpreter der Fkt AGGREGAT zV gestellt. Das ist dann ein Datenfeld, bei dem außer auf Fehlerwerte auf nichts weiter kontrolliert wdn kann. Das kann man auch leicht überprüfen, was ich sogar getan hatte, obwohl es mir von vornherein klar war. Auch auf Leerzellen kann dann nicht geprüft wdn, weil die im Datenfeld standard­mäßig als 0 erscheinen. Ein dafür erforderlicher Zugriff auf die QuellZellen wird so unmöglich und der Fml-Interpreter gibt offen­sichtlich keine derartigen Infos an XlFktt weiter.
Nur deshalb führen beide Arg2-Werte in diesem und allen Fällen von Arg3 als Datenfeld zum gleichen Ergebnis, egal, ob in dabei ursprüng­lich ver­wendeten Quell­Bereichen Leer­zellen ent­halten sind, Zeilen ausge­blendet oder TEILERGEBNISse bzw AGGREGATe berechnet wurden!
Gruß, Luc :-?
AW: weil so in der MSO-Hilfe geschrieben ...
23.11.2016 17:31:58
...
Hallo Luc,
... jedenfalls hab ich nach meiner Logik dies bisher so interpretiert.
Ich gebe jedoch zu, ich hatte die Option 2 des 2. Arguments nie wirklich getestet (weil für mich der MSO-Hilfetext zu 2 eine Einschränkung darstellte). Doch mein nun erfolgter Test ergab das gleiche Ergebnis wie Dein Testergebnis. Ich kann auch keinen Unterschied in der Wirkungsweise der beiden Optionen beim Einsatz in der Matrixversion (und nur die hab ich betrachtet und getestet) der Funktion feststellen. Wenn der Hilfetext zur Option 2 jedoch zutreffend gewesen wäre, ist das für meine Sichtweise des Funktionseinsatzes jedoch schon eine Einschränkung. Dies deshalb, weil ich zumindest ab und zu für eine Lösung eine AGGREGAT()-Schachtelung benötige. Deine Betrachtungsweise ist nun für mich offensichtlich eine entgegengesetzte. Du berücksichtigst, das mit der ausgewiesenen Funktionsweise der Option 2 des 2.- Argumentes mehr Eigenschaften der Quelldaten geprüft werden als mit der Option 6 Insofern haben wir uns bisher beide gegenseitig missverstanden, was nunmehr aufgeklärt ist.
Gruß Werner
.. , - ...
Na, denn iss ja jut... ;-) Aber ansonsten ist ...
23.11.2016 20:11:23
Luc:-?
…das mal wieder eine typische MSO-Hilfe-Schlamperei, Werner;
selbst nach Umstellung derselben auf MS-Access-Standards und bei neuen Fktt wie AGGREGAT scheint man sich damit keine grö­ßere Mühe geben zu wollen. Kein einziges Bsp in der AGGREGAT-Hilfe verwendet ein Datenfeld für Argument3, nichtmal so etwas Simples wie ein vorangestelltes 1* bzw --! Kein Wort auch davon, dass dann nur noch Arg2=6 sinnvoll wäre, weil alles Andere dann nicht möglich ist.
Damit wird doch die Unlogik in der AGGREGAT-Konstruktion besonders deutlich. Was man für Arg1>13 zugelassen hat, hätte man auch für 1…13 zulassen können. Es ist kein rationaler Grund erkennbar, warum das nun so ist. Sieht eher nach Kommunikations­Problemen im MS-Pgmmierer-Team u/o Zeitdruck aus.
Dafür finde ich nun die einst von Dir erwähnte Begründung für die Fehler­Filterung in der Xl-Hilfe. Muss wohl irgendwann mit einem MS-Update nachgeliefert worden sein. Aber daraus geht auch nicht hervor, warum es nun diese sog Matrix-Version gibt, nur, dass ihre FktsListe erst bei Nr14 beginnt, wenn man die Fktt mit der HptListe vergleicht.
Abgesehen mal von der PraxisNützlichkeit der Fkt, ist sie doch ein Bsp dafür, wie man es nicht machen sollte. Wer, bitte schön, soll das begreifen können? Das können nicht mal Pgmmierer, höchstens MS-interne Gründe erahnen…
Besonders putzig finde ich übrigens die Erklärung für Arg2=4 → nichts ignorieren im Vgl mit der InfoTipp-Anzeige; liest man dort doch Leerwerte ignorieren! Das machen aber ohnehin die meisten oder gar alle Xl-Fktt und hätte nur Sinn, wenn auch bei Arg1=3 (ANZAHL2) Zellen mit LeerTexten nicht gezählt würden, was aber nicht der Fall ist. Also ist nichts wohl doch nichts und kein Leer­wert, zumal sonst ja immer irgendetwas ignoriert wird (da wäre wohl aber 0 viel treffender gewesen → ich hasse solche gedan­ken­lose Willkür!).
Deshalb verstehe ich auch WFs Missfallen an dieser Fkt. ;-]
Eigentlich schade, dass eine gute Sache derart „verunglückt“ wurde…
Gruß, Luc :-?
AW: dies wäre wirklich ein Anlass ...
24.11.2016 11:49:49
...
Hallo Luc,
... die Angelegenheit mal an MS anzutragen, um der Sache auf den Grund zu gehen und dabei all das Andere zu und um AGGREGAT() was schon festgestellt wurde, möglichst auch mit in den "Trog" zu werfen.
Kannst mich ja im Februar nächsten Jahr mal nach dem Stand der Dinge fragen. Dann werde ich spätestens dadurch nochmal erinnert, falls ich es bis dahin doch vergessen haben sollt. Du weißt ja, mein beginnender Alz... ;-)
Gruß Werner
.. , - ...
Na, na, nicht verschreien, 3x klopf, klopf! ;-) …
24.11.2016 19:06:16
Luc:-?
…Werner;
wenn's mir dann wieder einfällt, frag ich bei Dir nach. Aber ich glaube eigentlich nicht, dass das viel bringt. MS ist ja die gestalterische und programmatische Anpassung an neueste Büro- und Management-M(eth)oden wichtiger als so etwas. Die Konkurrenz ist groß und meist auch schneller…
Grüße nach Chemheim und Alznitz! ;-]
Luc :-?

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige