Thema Datum  Von Nutzer Rating
Antwort
Rot Daten Bereinigung mit VBA-Excel
05.12.2017 11:47:11 legac
Solved
05.12.2017 14:23:41 legac
NotSolved

Ansicht des Beitrags:
Von:
legac
Datum:
05.12.2017 11:47:11
Views:
916
Rating: Antwort:
 Nein
Thema:
Daten Bereinigung mit VBA-Excel
Hallo Zusammen, ich versuche eine Datenreihe zu bereinigen. es Sind Messdaten wo manchmal Ausreißer auftauchen. gewünscht: es wird jede zelle geprüft und wenn eine Zelle(i+1) eine auffällige Wert aufweist wird sie übersprungen bis wieder eine zelle(i+j) gefunden ist, welche eine plausibler wert enthält. hier wird dann die Mittelwert der ersten und letzten plausiblen (korrekten) wert gebildet und wird in der Zelle (i+1) übergeben. also: Zelle(i): korrekt wert in datenreihe vor dem Ausreißer Zelle(i+j): Zelle mit ausreißer Zelle(i+j+1): zelle mit korrektem wert nach Ausreißer {Public Sub Korrek() Dim i, j, Anzahl As Integer Dim t, x, y As Long Dim Faktor1, Faktor2 As Long letztezeile = Worksheets("Tabelle1").Cells(Rows.Count, 2).End(xlUp).Row With Worksheets("Tabelle1") .Range("B1:B2881").Copy .Paste Destination:=.Range("E1") For i = 1 To 2881 Step j 't = Worksheets("Tabelle1").Range("E" & (i - j)).Value x = Worksheets("Tabelle1").Range("E" & i).Value y = Worksheets("Tabelle1").Range("E" & (i + 1)).Value q = Worksheets("Tabelle1").Range("E" & (i + j)).Value Faktor2 = Abs(y / x) If (Faktor2 > 2 Or Faktor2 < 0.3) Then For j = 1 To 100 ' bei werten größer als 100 ändern sich die Ergebnisse If (.Range("E" & (i + j)).Value / .Range("E" & i).Value) > 2 Or (.Range("E" & (i + j)).Value / .Range("E" & i).Value) < 0.3 Then .Range("E" & (i + 1)).Value = (.Range("E" & (i + j + 1)).Value + x) / 2 End If Next Else End If i = i + 1 Next End With End Sub } leider funktioniert dies nur bedingt wenn nicht falsch. die schleife für j kriege ich nicht korrekt hin, so dass j zurückgesetzt ist wenn die Nebenbedingung (if schleife) nicht zutrifft. ich hoffe ich konnte das Problem so gut wie möglich beschreiben und hoffe auf eure Hilfe. Legac

Ihre Antwort
  • Bitte beschreiben Sie Ihr Problem möglichst ausführlich. (Wichtige Info z.B.: Office Version, Betriebssystem, Wo genau kommen Sie nicht weiter)
  • Bitte helfen Sie ebenfalls wenn Ihnen geholfen werden konnte und markieren Sie Ihre Anfrage als erledigt (Klick auf Häckchen)
  • Bei Crossposting, entsprechende Links auf andere Forenbeiträge beifügen / nachtragen
  • Codeschnipsel am besten über den Code-Button im Text-Editor einfügen
  • Die Angabe der Emailadresse ist freiwillig und wird nur verwendet, um Sie bei Antworten auf Ihren Beitrag zu benachrichtigen
Thema: Name: Email:



  • Bitte beschreiben Sie Ihr Problem möglichst ausführlich. (Wichtige Info z.B.: Office Version, Betriebssystem, Wo genau kommen Sie nicht weiter)
  • Bitte helfen Sie ebenfalls wenn Ihnen geholfen werden konnte und markieren Sie Ihre Anfrage als erledigt (Klick auf Häckchen)
  • Bei Crossposting, entsprechende Links auf andere Forenbeiträge beifügen / nachtragen
  • Codeschnipsel am besten über den Code-Button im Text-Editor einfügen
  • Die Angabe der Emailadresse ist freiwillig und wird nur verwendet, um Sie bei Antworten auf Ihren Beitrag zu benachrichtigen

Thema Datum  Von Nutzer Rating
Antwort
Rot Daten Bereinigung mit VBA-Excel
05.12.2017 11:47:11 legac
Solved
05.12.2017 14:23:41 legac
NotSolved