Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: Autom. Mittelwertbildung unter 2 var. Kriterien

Autom. Mittelwertbildung unter 2 var. Kriterien
01.08.2004 11:30:54
Heinz
Kann folgenden Problem mit Hilfe einer Formel gelöst werden?
Es ist eine Datenbasis gegeben mit verschiedenen Dicken und Breiten und entsprechenden Kennwerten (Ausbringen).
Ich möchte diese Ausbringenswerte in Abhängigkeit von bestimmten Intervallen von Dicken und Breiten zusammenfassen und zwar die entsprechenden Mittelwerte der zugehörigen Ausbringenswerte.
Ich habe das Problem in der angehängten Datei zu veranschaulichen versucht.
Danke für die Hilfe.

Die Datei https://www.herber.de/bbs/user/9112.xls wurde aus Datenschutzgründen gelöscht

Anzeige

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Autom. Mittelwertbildung unter 2 var. Kriterien
Ramses
Hallo
hier mal eine Variante.
Ich gebe zu, dass die Berechnung etwas länger dauern könnte ;-), aber die

Function tut wenigstens.
Eine Formel wäre wahrscheinlich eine Monsterlösung.
Hier deine Tabelle zum Download.
<a href="https://www.herber.de/bbs/user/9116.xls">https://www.herber.de/bbs/user/9116.xls</a>
weil anscheinend keine HTML Befehle mehr verarbeitetn werden :-(((
Schreib mal deine E-Mail Adresse, meine findest du unter den Profilen, dann schicke ich dir deine Datei zurück
Dazu brauchst du diese Funktion
Option Explicit

Function Create_AV(valMin As Range, valMax As Range, valMinWidth As Range, valMaxWidth As Range) As Variant
Dim i As Long, datWks As Worksheet
Dim tmpVal As Double, tmpCnt As Long
Set datWks = Worksheets("Daten")
tmpVal = 0
tmpCnt = 0
With datWks
For i = 3 To .Cells(65536, 1).End(xlUp).Row
If .Cells(i, 2) >= valMin.Value And .Cells(i, 2) <= valMax.Value _
And .Cells(i, 3) >= valMinWidth.Value And .Cells(i, 3) <= valMaxWidth.Value Then
tmpVal = tmpVal + .Cells(i, 4)
tmpCnt = tmpCnt + 1
End If
Next i
End With
If tmpCnt = 0 Then
Create_AV = "- - -"
Else
Create_AV = tmpVal / tmpCnt
End If
End Function

Die

Function musst du in ein VBA-Modul deiner Mappe kopieren.
Mit "Alt"+"F11" den VB-Editor starten
Rechte Maustaste auf "Diese Arbeitsmappe" ( mit dem richtigen Namen der Mappe !! )
Einfügen - Modul
Doppelklick auf das eingefügte Modul
Einfügen des Codes
Die Funktion erwartet die Parameter
Kleinster Wert, Grösster Wert, Kleinste Breite, Grösste Breite
als Zellbezug.
Zum einfachen Kopieren, habe ich deshalb eine neue Zeile und eine neue Spalte mit dem Wert 0 eingebaut. Diese Zeile und Spalte kann dann ausgeblendet werden.
Gruss Rainer

Anzeige
AW: Autom. Mittelwertbildung unter 2 var. Kriterien
01.08.2004 14:09:34
Björn
Hallo Heinz,
folgende Formel gibt dir den Mittelwert 22 an:
=SUMMENPRODUKT((Daten!B3:B983&gt1,5)*(Daten!B3:B983&lt=2)*(Daten!C3:C983&gt799)*(Daten!C3:C983&lt=850)*(Daten!D3:D983))/SUMMENPRODUKT((Daten!B3:B983&gt1,5)*(Daten!B3:B983&lt=2)*(Daten!C3:C983&gt799)*(Daten!C3:C983&lt=850))
Aus dieser Formel kannst du alle anderen leicht ableiten.
Ich empfehle allerdings noch eine Wenn-Abfrage, damit nicht versucht wird durch Null zu teilen. Die Formel sieht dann so aus:
=WENN(SUMMENPRODUKT((Daten!B3:B983&gt1,5)*(Daten!B3:B983&lt=2)*(Daten!C3:C983&gt799)*(Daten!C3:C983&lt=850))&gt0;SUMMENPRODUKT((Daten!B3:B983&gt1,5)*(Daten!B3:B983&lt=2)*(Daten!C3:C983&gt799)*(Daten!C3:C983&lt=850)*(Daten!D3:D983))/SUMMENPRODUKT((Daten!B3:B983&gt1,5)*(Daten!B3:B983&lt=2)*(Daten!C3:C983&gt799)*(Daten!C3:C983&lt=850));"")
Gruß
Björn
Anzeige
AW: Autom. Mittelwertbildung unter 2 var. Kriterien
01.08.2004 20:36:04
Arnim
Hallo Heinz,
anbei noch ein Vorschlag mit der MITTELWERT-Funktion. Allerdings habe ich Deine Tabelle etwas verändert, indem ich die "von-bis"-Spalten und -Zeilen aufgeteilt habe.
Die Matrix-Formel lautet:
=MITTELWERT(WENN(((Daten!$B$3:$B$1000>$A4)*(Daten!$B$3:B$1000D$2)*(Daten!$C$3:C$1000 Schau Dir das Beispiel an unter:
https://www.herber.de/bbs/user/9121.xls
Gruß Arnim
Anzeige
Korrektur ;-(
02.08.2004 00:59:52
Arnim
Hallo Heinz,
ich habe mir gerade nocheinmal mein "Werk" angeschaut und festgestellt, dass ich "nur" ein paar lächerliche Dollar-Zeichen vergessen habe - entsprechend auch das Ergebnis!
Irgendwie hängt immer alles vom Gelde ab :-(
Korrigiertes Beispiel:
https://www.herber.de/bbs/user/9122.xls
Gruß Arnim
Anzeige
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige
Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige