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

Mittelwert über mehrere Tabellenbläter

Mittelwert über mehrere Tabellenbläter
31.08.2022 10:22:12
michax
Hallo,
folgende Problemstellung:
Ich habe ein Ausgangsblatt auf dem ein Suchkriterium in Spalte A steht und in Spalte B ein Mittelwert aus den anderen Tabellenblättern (habe ich zwischen Tabellenblatt "Start" und "Stop" gesetzt) errechnet werden soll. In diesem Tabellenblättern steht der Suchbegriff auch in Spalte A und die Werte in Spalte B.
Ist dies verständlich?

3
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Mittelwert über mehrere Tabellenbläter
31.08.2022 10:46:34
{Boris}
Hi,
3D-Bezüge sind von vielen Funktionen von Haus aus nicht auswertbar - zumindest nicht, wenn noch - wie in Deinem Fall - eine Bedingung dazukommt.
Eine denkbare Lösung könnte so aussehen (Suchkriterium ist hier "a" - kannst natürlich auch einen Zellbezug verwenden, wo Dein Suchbegriff steht):
=MITTELWERT(MITTELWERTWENNS(INDIREKT("'"&"Tabelle"&{2.3}&"'!B:B"); INDIREKT("'"&"Tabelle"&{2.3}&"'!A:A");"a"))
Die Formel impliziert, dass die Blattnamen, aus denen die Mittelwerte gebildet werden, indizierbar sind - im Beispiel sind es die beiden Blätter "Tabelle2" und "Tabelle3".
Das macht das Ganze einfacher. Sollten sie nicht indizierbar sein, dann muss man die Blattnamen explizit mit angeben - im Beispiel heißen die beiden Blätter "Haus" und "Garten":
=MITTELWERT(MITTELWERTWENNS(INDIREKT("'"&{"Haus"."Garten"}&"'!B:B"); INDIREKT("'"&{"Haus"."Garten"}&"'!A:A");"a"))
VG, Boris
Anzeige
AW: (D)eine Beispieldatei wäre hilfreich(er) owT
31.08.2022 10:46:57
neopa
Gruß Werner
.. , - ...
AW: Mittelwert über mehrere Tabellenbläter
31.08.2022 11:05:43
GerdL
Hallo Micha!

Sub Unit()
Dim intsh As Integer
Dim dblSum As Double
Dim intCt As Integer
Dim strSuch As String
'Name der Ergebnistabelle anpassen
For lngZeile = 2 To Sheets("Tabelle1").Cells(Sheets("Tabelle1").Rows.Count, 1).End(xlUp).Row
strSuch = Sheets("Tabelle1").Range("A" & lngZeile) 'anpassen
For intsh = Sheets("Start").Index + 1 To Sheets("Stop").Index - 1
If WorksheetFunction.CountIf(Sheets(intsh).Range("A:A"), strSuch) > 0 Then
dblSum = dblSum + WorksheetFunction.VLookup(strSuch, Worksheets(intsh).Range("A:B"), 2, 0)
intCt = intCt + 1
End If
Next
Sheets("Tabelle1").Range("B" & lngZeile) = dblSum / intCt
Next
End Sub
Gruß Gerd
Anzeige

301 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige