VBA - Vektorproblem
20.05.2014 22:19:28
Andreas
Ich habe folgendes Problem, welches ich mit VBA lösen muss, aber mein Ansatz funktioniert nicht so wie ich will...Ich habe ein Excel-Sheet mit vielen Daten (Börsenkurse-Zeitreihe) die in Spalte G sind.
Mein erster Schritt wäre es die Tagesrendite zu berechnen, dann möchte ich für 1200 Handelstage für jeweils 60-Tage einen Durchschnitt berechnen und diesen in einem Vektor auf meinem Sheet ausgeben, leider funktioniert da etwas nicht so ganz...
Ich weiß es wäre einfacher, sich einfach alles auf dem Excel-Sheet zu erstellen, ich muss es aber mit VBA lösen...
Hier wäre mein Code, mit der Frage: "Wo liegt mein Fehler" bzw. was muss ich anders machen?
Vielen vielen Danke!!!
Option Explicit
Option Base 1
Sub Rendite()
Dim wb As Workbook
Set wb = Workbooks("Datei")
Dim ws1 As Worksheet
Set ws1 = Worksheets("Siemens")
Dim ws2 As Worksheet
Set ws2 = Worksheets("Ausgabe")
Dim rendite() As Double
Dim WinAve(1, 1141) As Single
Dim WinStd(1, 1141) As Single
Dim St As Variant
Dim t As Double
t = ws1.Cells(1, 1).End(xlDown).Row
St = ws1.Range("G2:G" & t)
Dim i As Single
Dim n As Single
ReDim rendite(UBound(St) - 1)
For n = 1 To UBound(St) - 1
rendite(n) = (St(n, 1) / St(n + 1, 1)) - 1
Next n
For i = 1 To 1141
WinAve(1, i) = WorksheetFunction.Average(Range(rendite(i + 1), rendite(i + 60)))
Next i
ws2.Range("A" & i + 1).Value = WinAve(1, i)
End Sub