Sub MACROE()
Do
Range("A19") = 1
Dim z As Date
z = Range("D9")
If Range("D8") = Mid("monthly", 1, Len(Range("D8"))) Then
Range("B19") = DateAdd("m", 1, z)
ElseIf Range("D8") = Mid("quarterly", 1, Len(Range("D8"))) Then
Range("B19") = DateAdd("q", 1, z)
ElseIf Range("D8") = Mid("yearly", 1, Len(Range("D8"))) Then
Range("B19") = DateAdd("yyyy", 1, z)
End If
Range("C19") = Range("D5")
Range("D19") = re(Range("D6"), Range("D8"), Range("D7"), Range("D5"), Range("D11"), Range("D10"))
Range("E19") = Range("D11")
Range("F19") = Range("D19") + Range("E19")
Range("G19") = Range("F19") - ((Range("C19") * istar(Range("D6"), Range("D8"))))
Range("H19") = Range("F19") - Range("G19")
Range("I19") = Range("C19") - Range("F19")
Range("J19") = Range("H19")
Exit Do
Loop Until Cells(x, 9) = 0
Do
Cells(x, 1) = x - 18
If Range("D8") = Mid("monthly", 1, Len(Range("D8"))) Then
Range(x, 2) = DateAdd("m", 1, Range(x, 2))
ElseIf Range("D8") = Mid("quarterly", 1, Len(Range("D8"))) Then
Range(x, 2) = DateAdd("q", 1, Range(x, 2))
ElseIf Range("D8") = Mid("yearly", 1, Len(Range("D8"))) Then
Range(x, 2) = DateAdd("yyyy", 1, Range(x, 2))
End If
Cells(x, 3) = Cells(x - 1, 9)
If Range("D10") = Mid("level", 1, Len(Range("D10"))) Then
Cells(x, 4) = Application.WorksheetFunction.Min(Range("D" & x - 1), (Cells(x, 3) + Cells(x, 3) * istar(Range("D6"), Range("D8"))))
ElseIf Range("D10") = Mid("decreasing", 1, Len(Range("D10"))) Then
Cells(x, 4) = Application.WorksheetFunction.Min(Range("D" & x - 1), (Cells(x, 3) + Cells(x, 3) * istar(Range("D6"), Range("D8")) - (Cells(x - 1, 5) - Cells(11, 4))))
ElseIf Range("D10") = Mid("increasing", 1, Len(Range("D10"))) Then
Cells(x, 4) = Application.WorksheetFunction.Min(Range("D" & x - 1), (Cells(x, 3) + Cells(x, 3) * istar(Range("D6"), Range("D8")) - (Cells(x - 1, 5) + Cells(11, 4))))
End If
If (Cells(x, 4) = Cells(x - 1, 4)) Then
If Range("D10") = Mid("decreasing", 1, Len(Range("D10"))) Then
Cells(x, 5) = Cells(x - 1, 5) - Cells(11, 4)
ElseIf Range("D10") = Mid("increasing", 1, Len(Range("D10"))) Then
Cells(x, 5) = Cells(x - 1, 5) + Cells(11, 4)
End If
Else
If Range("D10") = Mid("level", 1, Len(Range("D10"))) Then
Cells(x, 5) = 0
ElseIf Range("D10") = Mid("increasing", 1, Len(Range("D10"))) Then
Cells(x, 5) = Cells(x - 1, 5) + Cells(11, 4)
ElseIf Range("D10") = Mid("decreasing", 1, Len(Range("D10"))) Then
Cells(x, 5) = Cells(x - 1, 5) - Cells(11, 4)
End If
Cells(x, 6) = Cells(x, 4) + Cells(x, 5)
Cells(x, 7) = Cells(x, 6) - (Cells(x, 3) * istar(Range("D6"), Range("D8")))
Cells(x, 8) = Cells(x, 3) * istar(Range("D6"), Range("D8"))
Cells(x, 9) = Cells(x, 3) - Cells(x, 7)
Cells(x, 10) = Cells(x - 1, 10) + Cells(x, 8)
End If
End Sub
Bookmarks