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

Forumthread: Mittelwert bis bestimmte Zeile

Mittelwert bis bestimmte Zeile
21.03.2016 10:17:28
Jakob

Hallo zusammen,
ich soll den Mittelwert von einer Spalte berechnen. Hierbei soll die Berechnung starten, nachdem ein Nulleintrag vorhanden ist und den Mittelwert bilden, bis der nächste Nulleintrag kommt. In der Abbildung habe ich das dargestellt. Ich habe eine ziemlich lange Tabelle, deshalb würde mir diese Formel eine Menge von Arbeit erleichtern.
Userbild
Vielen Dank.
Gruß
Jakob

Anzeige

5
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
mit VBA
21.03.2016 10:35:58
ChrisL
Hi Jakob
Sub MWSpezial()
Dim iZeile As Long, iiZeile As Long
For iZeile = 3 To Range("B65536").End(xlUp).Row
If Cells(iZeile, 2) = 0 And Cells(iZeile, 2)  Cells(iZeile + 1, 2) Then
iiZeile = iZeile
Do Until Cells(iZeile + 1, 2) = 0 Or Cells(iZeile + 1, 2) = ""
iZeile = iZeile + 1
Loop
Cells(iiZeile, 1).Formula = "=AVERAGE(B" & iiZeile + 1 & ":B" & iZeile & ")"
End If
Next iZeile
End Sub

Alt+F11, Menü Einfügen, Modul, Code rein kopieren. Danach Makro abspielen.
cu
Chris

Anzeige
AW: MITTELWERT() von INDEX() und AGGREGAT() ...
21.03.2016 10:45:31
INDEX()
Hallo Jakob,
... folgende Formel in A1: =WENN((B30)*(B2=0);MITTELWERT(B3:INDEX(B:B;AGGREGAT(15;6;ZEILE(B3:B997)/(B3:B997=0);1)-1));"") und diese nach unten kopieren.
Gruß Werner
.. , - ...

AW: MITTELWERT() von INDEX() und AGGREGAT() ...
21.03.2016 12:20:03
INDEX()
Super,
vielen vielen Dank!!

AW: Mittelwert bis bestimmte Zeile
21.03.2016 10:49:53
ingoG
Hallo Jakob,
oder mit Formel:
=WENN((B3=0)*(B4<>0);MITTELWERT(INDIREKT("B"&ZEILE(B4)&":B"&VERGLEICH(0;B4:B4:B$999;0)+ZEILE() -1));"")
in B3 Eintragen und nach unten ziehen...
Ich hoffe, das hilft Dir weiter
Gruß Ingo

Anzeige
AW: VERGLEICH(0;...) erkennt keine Leerzellen ...
21.03.2016 12:03:52
...
Hallo Ingo,
... somit müsste bei Anwendung Deiner Formel zwingend nach dem letzten Wert in der Spalte B eine 0 gesetzt werden.
In Deiner Formel steht B4:B4:B$999, darin ist B4 wohl aus Versehen doppelt?
Die volatile Funktion INDIREKT() würde ich aber auf jeden Fall durch INDEX() ersetzten.
Gruß Werner
.. , - ...
Anzeige
;

Forumthreads zu verwandten Themen

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