Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1312to1316
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 korrekt bilden

Mittelwert korrekt bilden
09.05.2013 12:10:33
Michael
Hallo zusammen :)
ich hätte noch ein kleines Problemchen. Und zwar versuche ich mittels Mittelwertbildung aus Sekundenwerten 10min Mittelwerte zu bilden.
Hier ein Ausschnitt aus meinem Programmcode:
Worksheets("Tabelle4").Activate
Dim lRow4 As Long
Dim lEnd4 As Long
Dim iCnt4 As Integer
'Mittelwert berechnen
lEnd4 = Range("C636667").End(xlUp).Row
For iCnt4 = 1 To Int(lEnd4 / 600) + 0
Cells(1 + iCnt4, 18) = Application.Average(Range("B" & 2 + lRow4 & ":B" & 601 + lRow4))
lRow4 = lRow4 + 600
Next
Nun ist mein Problem, dass bei der Mittelwertbildung ein Versatz auftritt von ca. 8Sekunden pro 10min Schritt. Hier ein Beispiel:
00:05:04
00:15:11
00:25:19
00:35:26
00:45:34
00:55:41
01:05:48
01:15:56
01:26:03
01:36:11
Wie kann ich diesen Versatz rausbekommen? Irgendwelche Ansätze?
Viele Grüße
Michi

8
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Mittelwert korrekt bilden
09.05.2013 12:18:42
Klaus
Hi,
statt
lEnd4 = Range("C636667").End(xlUp).Row
bitte aus Prinzip
lEnd4 = cells(rows.count,3).End(xlUp).Row
nutzen um die letzte Zelle zu ermitteln. Oder steht bei dir bei und unter C636667 noch etwas?
Ich habe keinen blassen Schimmer, was du mit "Versatz" meinst. Dein Code mittelt je 600 Werte. Was sollen deine 10 Beispielzeiten bedeuten?
einfach mal auf blauen Dunst, versuch mal den Mittelwert rechnerisch zu ermitteln statt per Funktion. Vielleicht bringt das schon was.
Cells(1 + iCnt4, 18) = Application.Sum(Range("B" & 2 + lRow4 & ":B" & 601 + lRow4)) / icnt4
Grüße,
Klaus M.vdT.

Anzeige
AW: Mittelwert korrekt bilden
09.05.2013 13:00:53
Michael
Hallo Klaus M.vdT.
danke für die schnelle Rückmeldung :)
ja das mit dem lEnd4 kann ich mal reinbringen. Ne nach und in C636667 steht nix.
Mit Versatz meine ich das irgendwas bei der Mittelwertbildung nicht stimmt, da statt 10 min Sprüngen immer 10min + 8sek Sprüngen auftreten.
VG

AW: Mittelwert korrekt bilden
09.05.2013 13:11:25
Klaus
Hallo Michael,
ich kenne deine Datei nicht, ich kenne deine Datenbasis nicht.
Weshalb sollte der Mittelwert denn springen? Oder einen Versatz haben? Denk da mal drüber nach, das kann dir doch NIEMAND beantworten ohne mal deine Datenbasis gesehen zu haben. Ein Mittelwert ist doch nichts was gemäß einer Trendlinie läuft. Ich frag mal ganz doof: Du weisst, was ein Mittelwert ist? Und ein gewichteter Mittelwert?
Ich nehm mal deine ersten beiden Zahlen, die du so grandios unkommentiert in den Beitrag kopiert hast.
00:05:04 (vermutlich aus Zeile 2-601?)
00:15:11 (vermutlich aus Zeile 602-1201?)
Davon ab, dass dein "Versatz" hier 10min und 7sec ist ...
was steht denn in 2-601? Wenn in diesen Zellen immer Werte um die 00:05:04 stehen, passt doch der Mittelwert.
Nehmen wir mal an, in 2-601 steht JEWEILS 00:05:04 und nichts anderes. Dann ist der Mittelwert exakt 00:05:04.
Nehmen wir weiter an, in 602-1201 steht jeweils 00:59:00. Dann ist der Mittelwert 00:59:00
Der "Versatz" sind dann 00:54:56, aber das macht ja nichts.
Mit welcher mathematischen Grundlage möchtest du einen gleichmäßigen Versatz rechtfertigen?
Grüße,
Klaus M.vdT.
PS: Lad mal eine blankodatei mit deinen ersten 2400 Zeiten hoch!

Anzeige
AW: Mittelwert korrekt bilden
09.05.2013 13:34:46
Michael
Hallo Klaus M.vdT.
ich lad hier mal die BlankoDatei hoch. ich denke das ich einen Logikfehler bei den Bereichsgrenzen habe- sodass irgendwie zb. noch ein zusätzlicherWert in die Berechnung einfließt als eigentlich sollte.
Wie in der Datei zu sehen ist habe ich eine durchlaufende Zeit über die die 10min Mittelwerte gebildet werden sollen.
VG
Michael
PS: Hier die Datei:
https://www.herber.de/bbs/user/85257.xlsm

AW: Mittelwert korrekt bilden
09.05.2013 13:54:29
Klaus
Hallo Michael,
egal was du da machst, du machst es falsch!
Warum willst du bei sortierten, aufsteigenden Werten überhaupt einen Mittelwert bilden?
Übrigens: in A600 steht 00:10:07 und nicht (wie du vermutest) 00:10:00
den ersten Fehler hast du in B82, hier folgt "00:01:22" auf "00:01:21", da fehlt eine Sekunde. Die anderen Fehler suche ich jetzt nicht raus, ist mir zu müßig. Aber das erklärt deinen "Versatz", deine Zahlenbasis ist schlicht fehlerhaft.
Beachte auch: eine Sekunde ist in Excel ungefähr:
1/24/60/60 = 0,0000115740740740741
da eine exakte Sekunde in dieser Zeitberechnung aber mehr als die 15 signifikanten Kommastellen braucht, wird diese Art zu rechnen dir immer und garantiert Fliesskommafehler fabrizieren.
Grüße,
Klaus M.vdT.

Anzeige
Nachtisch mit Lösungsvorschlag!
09.05.2013 14:04:16
Klaus
Hi Michael,
ich beziehe mich mal nur auf die Musterdatei, umbasteln auf deine Bezüge musst du selber.
schreibe in der leeren Zelle C1 den Inhalt "00:00:01"
schreibe in die Zelle A3 die Formel "=A2+$C$1" und kopiere das bis nach ganz unten.
(Oder noch einfacher: lass A2 und A3 wie es ist, in A4 kommt die Formel =A3+$A$3 und diese runter kopieren)
Lass das modifizierte Makro laufen (beachte, dass ich bei A3 anfange! Dein Makro fing bei A2 an, aber die Null willst du nicht mitnehmen).
Sub mittel()
Dim lRow4 As Long
Dim lEnd4 As Long
Dim iCnt4 As Integer
'Mittelwert berechnen
lEnd4 = Cells(Rows.Count, 1).End(xlUp).Row
For iCnt4 = 1 To Int(lEnd4 / 600) + 0
Cells(1 + iCnt4, 4) = Application.Average(Range("A" & 3 + lRow4 & ":A" & 601 + lRow4))
lRow4 = lRow4 + 600
Next
End Sub

Der Trick an der Sache: durch die Formel (statt des auto-Vervollständigen) wird Zeile für Zeile die Zeit neu berechnet, dadurch kann sich der Fliesskommafehler hinter der 15ten Nachkommastelle über die Menge der Zeilen nicht aufkummulieren.
Grüße,
Klaus M.vdT.

Anzeige
AW: Nachtisch mit Lösungsvorschlag!
10.05.2013 10:35:37
Michael
Danke schonmal für deine Mühen :)
ich werd mal schauen was ich da machen kann mit deinen Ansätzen
VG Michael

Danke für die Rückmeldung! owT.
10.05.2013 10:49:25
Klaus
.

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige