Hallo zusammen,
ich möchte eine kleine Prozessüberwachung machen Ich habe eine Tabelle mit Werten (Spalte A1 bis A1000). Der manuelle Eintrag (täglich ein Wert) der Werte startet bei A1 und wird nach und nach bis maximal 1000 erweitert. In einer zweiten Tabelle ( B1 bis B4 ) möchte ich, wenn ein neuer Wert hinzukommt die letzten 4 Werte der „A“ Tabelle übernehmen,(also die letzten drei plus den neuen) da aus diesen eine Trendberechnung ( Trend erkennbar - ja/nein )gemacht wird.
Wie sieht das Makro dazu aus ??
Schönen Tag noch
ich möchte eine kleine Prozessüberwachung machen Ich habe
eine Tabelle mit Werten (Spalte A1 bis A1000). Der manuelle
Eintrag (täglich ein Wert) der Werte startet bei A1 und wird
nach und nach bis maximal 1000 erweitert. In einer zweiten
Tabelle ( B1 bis B4 ) möchte ich, wenn ein neuer Wert
hinzukommt die letzten 4 Werte der „A“ Tabelle
übernehmen,(also die letzten drei plus den neuen) da aus
diesen eine Trendberechnung ( Trend erkennbar - ja/nein
)gemacht wird.
Wie sieht das Makro dazu aus ??
Hi Heiner,
in Dokumentmdul von dem Tabellenblatt:
Option Explicit
Private Sub Worksheet\_Change(ByVal Target As Range)
If Target.Column 1 Then Exit Sub
Dim Zei, Pos, Summe1, Summe2
Application.ScreenUpdating = False
Summe1 = Application.WorksheetFunction.Sum(Range("B1:B4"))
Range("B1:B4").ClearContents
Zei = Range("A65536").End(xlUp).Row
If Zei = Summe1 Then
MsgBox "Trend ist Plus " & Summe2 - Summe1
Else
MsgBox "Trend ist MINUS " & Summe1 - Summe2
End If
End Sub
Gruß
Reinhard
Hallo,
es geht auch ohne Makro.
Mit folgenden Formeln müsste es funktionieren:
B1:=INDIREKT(„A“&ANZAHL(A1:A1000)-3)
B2:=INDIREKT(„A“&ANZAHL(A1:A1000)-2)
B3:=INDIREKT(„A“&ANZAHL(A1:A1000)-1)
B4:=INDIREKT(„A“&ANZAHL(A1:A1000))
Falls in Spalte A noch keine 4 Werte eingetragen wurden, wird ein Fehler ausgegeben.
Viele Grüße, tester!
[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]
Hallo,
es geht auch ohne Makro.
Mit folgenden Formeln müsste es funktionieren:
kleine Ergänzung: hab übersehen, dass die Ausgabe in einer anderen Tabelle erfolgen soll. Daher muss noch der Name der Tabelle mit den Werten in die Formel eingefügt werden.
Angenommen die Werte befinden sich in „Tabelle1“:
B1:=INDIREKT(„Tabelle1!A“&ANZAHL(Tabelle1!A1:A1000)-3)
B2:=INDIREKT(„Tabelle1!A“&ANZAHL(Tabelle1!A1:A1000)-2)
B3:=INDIREKT(„Tabelle1!A“&ANZAHL(Tabelle1!A1:A1000)-1)
B4:=INDIREKT(„Tabelle1!A“&ANZAHL(Tabelle1!A1:A1000))
Falls in Spalte A noch keine 4 Werte eingetragen wurden, wird
ein Fehler ausgegeben.
Viele Grüße, tester!
Hallo zusammen,
ich möchte eine kleine Prozessüberwachung machen Ich habe
eine Tabelle mit Werten (Spalte A1 bis A1000). Der manuelle
Eintrag (täglich ein Wert) der Werte startet bei A1 und wird
nach und nach bis maximal 1000 erweitert. In einer zweiten
Tabelle ( B1 bis B4 ) möchte ich, wenn ein neuer Wert
hinzukommt die letzten 4 Werte der „A“ Tabelle
übernehmen,(also die letzten drei plus den neuen) da aus
diesen eine Trendberechnung ( Trend erkennbar - ja/nein
)gemacht wird.
Wie sieht das Makro dazu aus ??
Schönen Tag noch
Danke tester 
Hallo,
Codeänderung
Option Explicit
Private Sub Worksheet\_Change(ByVal Target As Range)
If Target.Column 1 Then Exit Sub
Dim Zei, Pos, Summe1, Summe2, ws2
Application.ScreenUpdating = False
Set ws2 = Worksheets("Tabelle2")
Summe1 = Application.WorksheetFunction.Sum(ws2.Range("B1:B4"))
ws2.Range("B1:B4").ClearContents
Zei = Range("A65536").End(xlUp).Row
If Zei = Summe1 Then
MsgBox "Trend ist Plus " & Summe2 - Summe1
Else
MsgBox "Trend ist MINUS " & Summe1 - Summe2
End If
End Sub
Gruß
Reinhard
Hallo Reinhard,
vielen Dank für den Code. Nicht ganz klar komme ich mit dem ausgegebenen Wert. Meine Aussage soll nur sein, dass die letzten 4 Werte einem Trend folgen oder nicht. Die Rechnung dazu lautet:Summe(xi-xi+1)Quadrat geteilt durch (n-1)*squadrat. Ist der so errechnete Wert kleiner einem Schwellenwert ( bei n = 4 S=95% 0.7805) liegt ein Trend vor.
Ich versuche mal zu basteln.
Gruss und schönen Tag noch
Heiner
vielen Dank für den Code. Nicht ganz klar komme ich mit dem
ausgegebenen Wert. Meine Aussage soll nur sein, dass die
letzten 4 Werte einem Trend folgen oder nicht. Die Rechnung
dazu lautet:Summe(xi-xi+1)Quadrat geteilt durch
(n-1)*squadrat. Ist der so errechnete Wert kleiner einem
Schwellenwert ( bei n = 4 S=95% 0.7805) liegt ein Trend vor.
Ich versuche mal zu basteln.
Gruss und schönen Tag noch
Hallo Heiner,
der ausgegeben Wert ist die Differenz zwischen der Summer der „alten“ 4 letzten Werte nd den „neuen“ 4 letzten Werten nachdem du unten in der Liste einen neuen Wert angefügt hast.
Zu deinen Formeln,
ich habe 4 Werte, was ist denn dann xi, xi+1? Und was sind diese 0,7805? Mit (n-1)*squadrat meinst du (n-1)^2 ?
Wenn ich die Formeln kapieren würde wäre es wahrscheinlich einfach sie mit in den Code einzubauen.
Poste deine Excelformel die den Trend berechnet, das kann ich dann umsetzen.
Gruß
Reinhard
Hallo,
entschuldige ich bin unterwegs gewesen. Vielen Dank für deine Antwort.
Erläuterung:
xi = wert 1 oder 4. letzter
x(i+1)=wert 2 oder 3. letzter
s = standardabweichung der letzten 4 Werte
Beispiel:
Werte ((xi-x(i+1))^2
74.0
75.3 1.553
74.4 0.754
74.6 0.036
summe: 2.344
Standardabweichung = 0.522
Aus diesen Wert wird die Prüfgrösse berechnet:
n = Anzahl Messwerte ( hier 4 )
PG = summe((xi-x(i+1))^2 (2.344) geteilt durch (( n-1 )* standardabw.(0.552)^2)
PG = 2.868 ( hoffe ich habe richtig gerechnet )
dieser Wert wird gegen einen Tabellenwert verglichen. Abhängig von n und der " Aussagesicherheit "
Beispiel:
S 95% 0.7805
S 99% 0.5256
S99.9% 0.2898
Ein Trend liegt vor wenn PG[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]
Hallo Heiner,
ich krieg das nicht gebacken.
xi = wert 1 oder 4. letzter
x(i+1)=wert 2 oder 3. letzter
Wer legt das „oder“ fest?
s = standardabweichung der letzten 4 Werte
Beispiel:
Werte ((xi-x(i+1))^2
74.0
75.3 1.553
74.4 0.754
74.6 0.036
summe: 2.344
Ich sehe da Wertedifferenzen von 1,3 0,9 usw, außer bei 0,6 komme ich da nicht auf deine Ergebnisse. Und die Wurzel aus 1,553 und 0,754 hilft mir auch nihct weiter.
Standardabweichung = 0.522
Wie kommst du darauf?
Aus diesen Wert wird die Prüfgrösse berechnet:
n = Anzahl Messwerte ( hier 4 )
PG = summe((xi-x(i+1))^2 (2.344) geteilt durch (( n-1 )*
standardabw.(0.552)^2)
PG = 2.868 ( hoffe ich habe richtig gerechnet )
=2,344/3/0,552^2 ergibt bei mir 2,564
dieser Wert wird gegen einen Tabellenwert verglichen. Abhängig
von n und der " Aussagesicherheit "
Beispiel:
S 95% 0.7805
S 99% 0.5256
S99.9% 0.2898
Ein Trend liegt vor wenn PG
Hallo, da habe ich mich wohl falsch ausgedrückt. Es gibt kein oder. Je nachdem wo man anfängt zu zählen könnte man sagen: Es ist der erste Wert der Tabelle oder der 4.letzte der „Urwerte“
74.0 ist der 4. letzte Wert der Urliste. Würde ich nur die letzten 4 Werte betrachten wäre es der erste. Du hast recht etwas kompliziert ausgedrückt.
Gruss und schönen Tag noch
[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]