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

=MAX(SUMME{f(B1;A2:A10)};SUMME({f(C1;A2:A10)};...;

=MAX(SUMME{f(B1;A2:A10)};SUMME({f(C1;A2:A10)};...;
26.05.2017 08:34:46
Ulf
Hallo EXCEL_isten,
sicher ist die Lösung simpel aber ich komm nicht drauf.
Die gewünschte Funktion wäre:
=MAX(SUMME{f(B1;A2:A10)};SUMME({f(C1;A2:A10)};...;SUMME{f(X1;A2:A10)}
f ist eine selbst definierte Funktion
also die Einzelsummen über eine Feldfunktion ermitteln.
Danke im Voraus
Ulf

15
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
Glaskugel defekt ... Was genau willst Du? owT
26.05.2017 09:13:27
lupo1
.
AW: Glaskugel defekt ... Was genau willst Du? owT
26.05.2017 09:43:44
Ulf
Hallo lupo1,
Ich habe :
in Zeile 1 ab Spalte B bis X
die Ziffern 0*Länge; 0,1*Länge; 0,2*Länge ...
in der Spalte 1 Zeile 2 bis 10 Eingabewerte (reelle Zahlen)
Die Zellen B2 bis X10 beinhalten eine Formel f (eine UDF)
Zelle B2 = f(B1;A2)
Zelle B3 = f(B1;A3)
...
Zelle B10= f(B1;A10)
Zelle B11= Summe(B2:B10) was auch gleich ist mit ={f(B1;A2:A10)}
nächste Spalte
Zelle C2 = f(C1;A2)
Zelle C3 = f(C1;A3)
...
Zelle C10= f(C1;A10)
Zelle C11= Summe(C2:C10) was auch gleich ist mit ={f(C1;A2:A10)}
und nun brauche ich des Maximum der einzelnen Summen
=MAX(B11:X11)
Da dieses eine Tabelle liefert mit paar Hundert Funktionsaufrufen
wollte ich wissen, ob man das mit einer einzigen Formel hinbekommt.
Und wenn ja, packe ich die Funktion f mit rein.
Dann brauche ich die UDF f nicht, denn die bremst alles aus.
Ulf
Anzeige
AW: Bsp.-Mappe macht Sinn
26.05.2017 10:39:46
hary
Moin
Lad mal eine bsp.-Mappe hoch.Braucht ja nicht hunderte von Daten.
gruss hary
klappt leider nicht
26.05.2017 10:50:28
Ulf
.
AW: klappt leider nicht
26.05.2017 11:15:45
hary
Moin
Was macht deine UDF genau? Blicke da nicht ganz durch.
Hier mal ein *Verstehversuch.



Tabelle1
 ABCDE
1 00,10,2 
2100,10,2 
3200,20,4 
4600,61,2 
5800,81,6 
6Zeile ausblenden01,83,6 
7     
8Max aller Spaltensummen3,6   

verwendete Formeln
Zelle Formel Bereich R1C1 für Add In
B1=0*1,1  =0*1.1
C1=0,1*1  =0.1*1
D1=0,2*1  =0.2*1
B2: D5=B$1*$A2  =R1C*RC1
B6: D6=SUMME(B1:B5)  =SUM(R[-5]C:R[-1]C)
B8=MAX(B6: D6)  =MAX(R[-2]C:R[-2]C[2])

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 14.02 einschl 64 Bit

gruss hary
Anzeige
AW: klappt leider nicht
26.05.2017 11:49:58
Ulf
Hallo Hary,
genau das ist es! Mit der UDF ist es nur nicht ganz so linear,
sonst wäre ja die erste und letzte Spalte immer ein Extremwert.
Für die einzelnen Summen kann man schreiben
={summe(B1*A2:A5)}, da spart man sich schon mal B2 bis B5
Nun möchte ich mir die einzelnen Summen auch noch ersparen.
Das das nicht so geht wie im Betreff der Anfangsfrage ist mir klar.
Im VBA wären das paar geschachtelte Schleifen soll aber möglichst ohne VBA
sein.
Ulf
ich setzte mal den Haken offen
26.05.2017 14:56:50
Ulf
.
AW: und ich hake mal nach ...
27.05.2017 08:10:10
...
Hallo Ulf,
... Deine Angaben sind mE widersprüchlich. Bisher verwendet Du eine UDF in B2:X10, also 207 Zellformeln. Jetzt willst Du Dein Endergebnis möglichst ohne VBA mit nur einer Formel ermitteln. Das heißt damit aber auch ohne UDF, denn anderenfalls kannst Du ja gleich eine UDF für Deine Gesamtergebnis aufstellen.
Es wäre aber möglicherweise völlig unproblematisch ohne UDF in B11:X11 die Summen von f(A2:A10) und wahrscheinlich dies sogar auch ohne klassische Matrixformel zu ermitteln und von diesen lediglich 23 Formelergebnissen dann das Maximum. Die Summen B11:X11 müssten auch nicht da, sondern können z.B. auch z.B. in Z1:Z23 ermittelt werden. Du sparst Dir damit Deine UDF und fast 89% an Zell-Formeln. Was spricht denn dagegen?
Gruß Werner
.. , - ...
Anzeige
AW: eine Matrixfunktion(alität)sformel reicht ...
27.05.2017 08:52:11
...
Hallo Ulf,
... hab eben noch mal nachgedacht und danach eine dementsprechende Lösungsformel gefunden, die ohne den Umweg zum Ergebnis gelangt.
Du hast zwar noch nicht kundgetan, was und wie konkret mit Deiner UDF wirklich ermittelt wird, aber wenn ich davon ausgehen kann, dass diese auch mit einer einer normalen Formel realisierbar ist, kann ich ohne Ermittlung der jeweiligen Spaltensummen das gewünschte Ergebnis sofort ermitteln. Und das ganz ohne klassische Matrixformel.
Mein allgemeiner Formelansatz dafür lautet: =MAX(MMULT(SPALTE(A1:I1)^0;INDEX(f[A2:A10;B1:X1];)))
worin das f für die bisher von Dir noch nicht konkret aufgezeigte Funktion steht
Gruß Werner
.. , - ...
Anzeige
AW: eine Matrixfunktion(alität)sformel reicht ...
27.05.2017 20:03:44
Ulf
Hallo Werner,
die UFD ist nichts aufregendes: f(x,y,C)= nurGrundrechenarten(x,y,C) mit
x jeweils Spaltenüberschrift (B1:X1)
y lezeils zeilenbeschriftung (A2:A10)
C eine Konstante
so ähnlich wie:
x * (x + y - C) * ((x + y) - (x * x + (x + y - C) * (x + y - C)) / (x + y))
Bei x und y nicht an Koordinaten denken, einfach nur Werte.
MMULT, tranponierte Matrix, Spelte, und Index ; ich kanns noch nicht glauben,
bin noch lernfähig, hoffe ich, will ja mal im Level steigen.
Ein schönes Wochenende wünscht Dir
Ulf
PS lasse das Häkchen offen bewußt weg, es bleibt mir ja noch eine komplexere UDF.
Oder der Ehrgeiz lasst uns noch eine idee im Schlaf kommen.
Anzeige
AW: ebenfalls auch noch einen Sonntag ... und ...
28.05.2017 14:24:56
...
Hallo Ulf,
... aus Deinem Beitrag bin ich insofern nicht ganz schlau geworden, ob Dir mein Formelvorschlag schon geholfen hat oder noch nicht.
Zumindest der Vollständigkeit halber, schreib ich deshalb die für Deine zuletzt aufgezeigte Funktionalität Deiner UDF die endgültige Auswertungsformel auf, die die UDF und alle anderen Zellformeln ersetzt.
Für Deine nicht näher definierte Konstante C nehme ich jetzt einfach an, dass diese in A11 eingegeben bzw. auch z.B. über eine Dropdownzelle ausgewählt wird.
Die Formel lautet danach somit:
=MAX(MMULT(SPALTE(A1:I1)^0;INDEX(B1:X1*(B1:X1+A2:A10-A11)*((B1:X1+A2:A10)-(B1:X1^2+(B1:X1+A2:A10-A11)^2)/(B1:X1+A2:A10));)))
Damit wärst Du u.a. auch in der Lage mit nur einer Formel den X-Wert zu ermitteln, für den mit dieser Formel das MAXima ermittelt wird.
Gruß Werner
.. , - ...
Anzeige
AW: ebenfalls auch noch einen Sonntag ... und ...
28.05.2017 21:33:53
Ulf
Hallo Werner,
nein, hatte noch keine Lösung, denn in den Klammern nach Index steht für mich
bisher ein Bereich und zwei Zahlen für Zeile und Spalte, ich gehe Deinem ansatz noch mal nach.
Aber nun sollten wir uns erstmal unseren persönlichen sozialen Umfeld widmen.
Ulf
Wenn Du scheibst zum Ende der Nachricht ..,- und dahinter meinst Du mich, kennst ja mein Gesicht nicht.
Werner ist ein Held
29.05.2017 08:35:33
Ulf
Hallo Werner,
es klappt, ich werde es auch noch mal analysieren, damit ich es
auch nachvollziehen kann.
Vielen Dank
Ulf
AW: eine Matrixfunktion(alität)sformel reicht ...
29.05.2017 12:50:45
Ulf
Hallo Werner,
bin jetzt durchgestiegen,
es ist keine transponierte Matrix wie ich geschrieben habe,
es war nur der Exponent 0 damit ein 1.1.1.1 Array entsteht.
Für mich war auch die Besonderheit bei INDEX mit leer bzw Null
neu. Sowie auch die Trennung im Array mit . und ;
Erstaunlich ist auch, dass es komplett ohne Feldfunktion geht.
Nochmals Danke
Ulf
Anzeige
AW: bitte; ja, genau so ist es owT
29.05.2017 13:47:33
...
Gruß Werner
.. , - ...

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige