problems37
FIBONACCI IN ACTIONn Fibonacci1 1 - =Fibonacci(A3)2 1 - =Fibonacci(A4)3 2 - =Fibonacci(A5)6 8 - =Fibonacci(A6)12 144 - =Fibonacci(A7)24 46368 - =Fibonacci(A8)A B C D123456789101112131415161718VBA CodeFunction Fibonacci(n As Integer) As LongDim Temp, t1, t2 As LongDim i As IntegerIf n = 0 ThenFibonacci = 0ElseIf n = 1 ThenFibonacci = 1Elset1 = 0: t2 = 1For i = 2 To nTemp = t1 + t2t1 = t2: t2 = TempNext iFibonacci = TempEnd IfEnd FunctionE123456789101112131415161718HOMEFACTORIAL IN ACTIONn HomeFactorial-1 0 - =HomeFactorial(A3)0 0 - =HomeFactorial(A4)1 1 - =HomeFactorial(A5)2 2 - =HomeFactorial(A6)3 6 - =HomeFactorial(A7)8 40320 - =HomeFactorial(A8)A B C D123456789101112131415VBA CodeFunction HomeFactorial(n As Integer) As LongDim Temp As LongDim i As IntegerIf n = 0 ThenHomeFactorial = 0ElseTemp = 1For i = 1 To nTemp = Temp * iNext iHomeFactorial = TempEnd IfEnd FunctionE123456789101112131415NEWPV IN ACTIONCF r NewPV100.0000 10% 379.0787 - =NewPV(A3,B3)50.0000 10% 189.5393 - =NewPV(A4,B4)100.0000 1% 485.3431 - =NewPV(A5,B5)50.0000 1% 242.6716 - =NewPV(A6,B6)A B C D E12345678910VBA CodeFunction NewPV(CF, r)Dim i As IntegerDim TempTemp = 0For i = 1 To 5Temp = Temp + CF / (1 + r) iNext iNewPV = TempEnd FunctionF12345678910BETTERNEWPV IN ACTIONCF r n BetterNewPV100.0000 5% 5 432.9477 - =BetterNewPV(A3,B3,C3)50.0000 10% 5 189.5393 - =BetterNewPV(A4,B4,C4)100.0000 1% 10 947.1305 - =BetterNewPV(A5,B5,C5)50.0000 1% 10 473.5652 - =BetterNewPV(A6,B6,C6)A B C D E F12345678910VBA CodeFunction BetterNewPV(CF, r, n)Dim i As IntegerDim TempTemp = 0For i = 1 To nTemp = Temp + CF / (1 + r) iNext iBetterNewPV = TempEnd FunctionG12345678910BANKPV IN ACTIONCF r n BankPV100.00 5% 5 432.95 - =BankPV(A3,B3,C3)100.01 5% 5 439.04 - =BankPV(A4,B4,C4)1,000.00 5% 5 4,464.36 - =BankPV(A5,B5,C5)1,000.01 5% 5 4,540.79 - =BankPV(A6,B6,C6)5,000.00 5% 5 22,703.71 - =BankPV(A7,B7,C7)5,000.01 5% 5 22,964.11 - =BankPV(A8,B8,C8)A B C D E F123456789101112131415VBA CodeFunction BankPV(CF, r, n)Select Case CFCase 0 To 100BankPV = BetterNewPV(CF, r, n)Case 100 To 500BankPV = BetterNewPV(CF, r - 0.005, n)Case 500 To 1000BankPV = BetterNewPV(CF, r - 0.011, n)Case 1000 To 5000BankPV = BetterNewPV(CF, r - 0.017, n)Case ElseBankPV = BetterNewPV(CF, r - 0.021, n)End SelectEnd FunctionG123456789101112131415BANKFV IN ACTIONCF r n BankFV100.00 5% 5 580.19 - =BankFV(A3,B3,C3)100.01 5% 5 588.86 - =BankFV(A4,B4,C4)1,000.00 5% 5 5,992.91 - =BankFV(A5,B5,C5)1,000.01 5% 5 6,099.47 - =BankFV(A6,B6,C6)5,000.00 5% 5 30,497.07 - =BankFV(A7,B7,C7)5,000.01 5% 5 30,856.78 - =BankFV(A8,B8,C8)A B C D E F1234567891011121314151617181920212223VBA CodeFunction InternalFV(CF, r, n)Dim i As Integer, t As Doublet = 0For i = 1 To nt = (t + CF) * (1 + r)Next iInternalFV = tEnd FunctionFunction BankFV(CF, r, n)Select Case CFCase 0 To 100BankFV = InternalFV(CF, r, n)Case 100 To 500BankFV = InternalFV(CF, r + 0.005, n)Case 500 To 1000BankFV = InternalFV(CF, r + 0.011, n)Case 1000 To 5000BankFV = InternalFV(CF, r + 0.017, n)Case ElseBankFV = InternalFV(CF, r + 0.021, n)End SelectEnd FunctionG1234567891011121314151617181920212223BANK1FV IN ACTIONCF r n BankFV100.00 5% 5 580.19 - =Bank1FV(A3,B3,C3)1,000.00 5% 5 5,801.91 - =Bank1FV(A4,B4,C4)5,000.00 5% 5 29,691.39 - =Bank1FV(A5,B5,C5)A B C D E F12345678910VBA CodeFunction Bank1FV(CF, r, n)Dim i As Integer, t As Doublet = 0For i = 1 To nIf t = 10000 Then t = (t + CF) * (1 + r) _Else t = (t + CF) * (1 + r + 0.01)Next iBank1FV = tEnd FunctionG12345678910BANK2FV IN ACTIONCF r n BankFV1,000.00 5% 5 5,884.33 - =Bank2FV(A3,B3,C3)1,000.01 5% 5 5,884.39 - =Bank2FV(A4,B4,C4)5,000.00 5% 5 30,033.93 - =Bank2FV(A5,B5,C5)5,000.01 5% 5 30,033.99 - =Bank2FV(A6,B6,C6)A B C D E F123456789101112131415161718VBA CodeFunction Bank2FV(CF, r, n)Dim i As Integer, t As Doublet = 0For i = 1 To nSelect Case tCase 0 To 1000t = (t + CF) * (1 + r + 0.002)Case 0 To 5000t = (t + CF) * (1 + r + 0.005)Case 0 To 10000t = (t + CF) * (1 + r + 0.01)Case Elset = (t + CF) * (1 + r + 0.013)End SelectNext iBank2FV = tEnd FunctionG123456789101112131415161718