Autor
|
Thema: Mittelwert aus variabler Anzahl von Werten bilden (17285 mal gelesen)
|
GB1 Mitglied
Beiträge: 14 Registriert: 23.02.2011
|
erstellt am: 16. Jul. 2012 18:35 <-- editieren / zitieren --> Unities abgeben:
Hallo, ich habe folgendes Problem: Aus den Werten von 100 Zellen möchte ich verschiedene Mittelwerte berechnen. Soll der Mittelwert aus allen Werten ermittelt werden, ist das zunächst noch einfach machbar mit der Formel: MITTELWERT(A1:A100). Nun möchte ich aber auch mal den Mittelwert der ersten 20 oder 30 Werte berechnen. Kann man die oben genannte Formel so modifizieren, dass ich nur noch in einem separaten Feld eine beliebige Zahl eingebe und dann den entsprechenden Mittelwert erhalte? Danke fürs Lesen und für Eure Antworten! Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Thomas Harmening Moderator Arbeiter ツ
Beiträge: 2897 Registriert: 06.07.2001 Das Innerste geäussert und aufs Äusserste verinnerlicht
|
erstellt am: 16. Jul. 2012 20:14 <-- editieren / zitieren --> Unities abgeben: Nur für GB1
Gegeben: Zahlen in Spalte A aus denen der Mittelwert erstellt werden soll. Zelle mit ANZ benamst die die Anzahl der x grössten Zahlen definiert aus denen der Mittelwert gebildet werden soll. Formel: Code: =SUMMENPRODUKT(KGRÖSSTE(A1:A100;ZEILE(INDIREKT("1:"&ANZ&""))))/ANZ
oder wenn von Zelle A1 x Werte folgend der Mittelwert gebildet werden sollCode: =MITTELWERT(INDIREKT("A1:" & ADRESSE(ZEILE(A1)*ANZ;1)))
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
GB1 Mitglied
Beiträge: 14 Registriert: 23.02.2011
|
erstellt am: 16. Jul. 2012 20:32 <-- editieren / zitieren --> Unities abgeben:
Hallo, danke für Deine Antwort, aber ich wollte nicht den Mittelwert der GRÖßTEN Zahlen sondern den der ERSTEN Zahlen bilden. D.h. ich will MITTELWERT(A1:A100) oder MITTELWERT(A1:A20) ausrechnen. Die erste Zelle A1 bleibt, nur die letzte soll variiert werden können. Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Thomas Harmening Moderator Arbeiter ツ
Beiträge: 2897 Registriert: 06.07.2001 Das Innerste geäussert und aufs Äusserste verinnerlicht
|
erstellt am: 16. Jul. 2012 20:35 <-- editieren / zitieren --> Unities abgeben: Nur für GB1
|
GB1 Mitglied
Beiträge: 14 Registriert: 23.02.2011
|
erstellt am: 16. Jul. 2012 21:01 <-- editieren / zitieren --> Unities abgeben:
|
Thomas Harmening Moderator Arbeiter ツ
Beiträge: 2897 Registriert: 06.07.2001 Das Innerste geäussert und aufs Äusserste verinnerlicht
|
erstellt am: 16. Jul. 2012 21:44 <-- editieren / zitieren --> Unities abgeben: Nur für GB1
ANZ=10 =MITTELWERT(INDIREKT("A1:" & ADRESSE(ZEILE(A1)*ANZ;1))) ZELLE(A1) ergibt den Rückgabewert 1 /// diesen mit ANZ multipliziert 10 Adresse bildet aus ADRESSE(ZEILE(A1)*ANZ;1)) $A$10 Da ("A1:"&ADRESSE(ZEILE(A1)*ANZ;1)) ein String ergibt A1:$A$10 packt man das in ein Indirekt() so kann der Bezug des Textwerts A1:$A$10 von der Formel ausgewertet werden = MITTELWERT(A1:$A$10) Hoffe das war verständlich Einfach mal auf auf die entsprechende Formelfunktion in der Eingabezeile gehen und anschliessend das fx klicken. Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Comos User Mitglied
Beiträge: 112 Registriert: 23.03.2010
|
erstellt am: 17. Jul. 2012 09:13 <-- editieren / zitieren --> Unities abgeben: Nur für GB1
Hallo Thomas, Ich bin in EXCEL eigentlich gut bewandert, lerne aber gern noch dazu. Leider verstehe ich deine Erklärung nicht. Mit VBA ist das ja alles kein Problem, aber als Formel - wie realisiere ich ANZ=10 als Formel - wozu muß ich ANZ mit Zeile(A1) [was ja 1 ist] multiplizieren? - Was passiert wenn mal nicht A1 der Startpunkt ist? Ich würde ja eher diese Formel nutzen, aber alle Fragen beantwortet das auch nicht
Code: =MITTELWERT(INDIREKT("A1:" & ADRESSE(ZEILE(A1)+ANZ-1;1)))
Wenn Start und Anz als Namen definiert sind wäre das eine vollkommen flexibele Variante
Code: =MITTELWERT(INDIREKT(ZELLE("Adresse";START) & ":"& ADRESSE(ZEILE(START)+ANZ-1;SPALTE(START))))
Gruß Peter Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Beverly Mitglied Dipl.-Geologe (Rentner)
Beiträge: 394 Registriert: 11.08.2007
|
erstellt am: 17. Jul. 2012 10:11 <-- editieren / zitieren --> Unities abgeben: Nur für GB1
|
GB1 Mitglied
Beiträge: 14 Registriert: 23.02.2011
|
erstellt am: 17. Jul. 2012 12:11 <-- editieren / zitieren --> Unities abgeben:
|
GB1 Mitglied
Beiträge: 14 Registriert: 23.02.2011
|
erstellt am: 20. Jul. 2012 19:19 <-- editieren / zitieren --> Unities abgeben:
Nun habe ich doch noch eine Frage... Was müsste ich ändern damit ich mehrere Mittelwerte hintereinander berechnen kann. Also angenommen ich habe eine Liste mit 100 Werten und jetzt möchte ich die Mittelwerte der Zellen A3 bis A5, dann A4 bis A6, dann A5 bis A7 usw. berechnen. So dass es am Ende ungefähr so aussieht: Wert Mittelwert 7 =(7+3+5)/3 3 =(3+5+4)/3 5 =(5+4+8)/3 4 8 ... Natürlich soll es auch weiterhin möglich sein, die Anzahl der Zellen zu variieren. Ich freue mich über jede Antwort. Danke!
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Beverly Mitglied Dipl.-Geologe (Rentner)
Beiträge: 394 Registriert: 11.08.2007
|
erstellt am: 21. Jul. 2012 09:15 <-- editieren / zitieren --> Unities abgeben: Nur für GB1
|
GB1 Mitglied
Beiträge: 14 Registriert: 23.02.2011
|
erstellt am: 21. Jul. 2012 13:22 <-- editieren / zitieren --> Unities abgeben:
|
Beverly Mitglied Dipl.-Geologe (Rentner)
Beiträge: 394 Registriert: 11.08.2007
|
erstellt am: 21. Jul. 2012 15:26 <-- editieren / zitieren --> Unities abgeben: Nur für GB1
Hi, in Anführungszeichen wird jeweils der Teil gesetzt, der unveränderlich ist und mit & werden feststehende Teile und variable Teile verknüpft. Ein feststehender Bereich würde so aussehen INDIREKT("A5:A7") Da der Spaltenbuchstabe und der Doppelpunkt : unveränderlich sind, werden diese in Anführungszeichen gesetzt. Die Start-Zeilennummer soll dynamisch sein und sich von Zeile zu Zeile um 1 erhöhen - das erreicht man am einfachsten durch ZEILE(A5) wenn du in Zeile 5 beginnst, wobei man auch einfach ZEILE() schreiben kann, denn die Formel soll sich auf die aktuelle Zeile beziehen. Dieser variable Teil der Startzeile wird mit dem feststehenden Teil (Spaltenbuchstabe) der Startzeile mittels & verknüpft - somit sieht die Teil-Formel für die Startzeile so aus INDIREKT("A"&ZEILE(A5) Als nächstes kommt wieder ein feststehender Formelteil ":A", der mit dem bereits vorhandenen mittels & verknüpft wird INDIREKT("A"&ZEILE(A5)&":A" Die Endzeile des Bereichs, die ebenfalls dynamisch sein soll, setzt sich aus der aktuellen Zeile ZEILE(A5) und dem in C1 vorgegebenen Wert zusammen. Da 5 + 3 (in deinem Beispiel) jedoch 8 und nicht 7 ergeben, muss noch 1 subtrahiert werden, und dieser Zeilen-Teil wird wiederum per & mit dem schon vorhandenen Formelteil verknüpft, sodass sich dieses ergibt: INDIREKT("A"&ZEILE(A5)&":A"&ZEILE(A5)+C$1-1) ------------------ Bis später, Karin Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
GB1 Mitglied
Beiträge: 14 Registriert: 23.02.2011
|
erstellt am: 21. Jul. 2012 18:34 <-- editieren / zitieren --> Unities abgeben:
|