Board logo

標題: 計算金額幾年為負數 [打印本頁]

作者: yc1031    時間: 2024-3-20 15:36     標題: 計算金額幾年為負數

本帖最後由 yc1031 於 2024-3-20 15:41 編輯

大家好,

我有一個表格(如附件), 我想請問大家像這樣的表有沒有辦法直接用公式算出B欄的金額到第幾年會用完? 謝謝![attach]37609[/attach]
作者: yc1031    時間: 2024-3-21 13:46

回復 1# yc1031



有人可以幫忙嗎? 謝謝
作者: Andy2483    時間: 2024-3-22 13:30

回復 1# yc1031

謝謝前輩發表此主題與範例
後學藉此帖練習自訂函數,學習方案如下,請前輩參考
[G1]輸入 =Y(9000000, 70000, 0.03, 0.06, 216000) 執行結果:
[attach]37612[/attach]

Option Explicit
Function Y&(本金&, 每月花費&, 通膨#, 配息#, 退休金&)
Dim i&, 整年花費加通膨&
For i = 1 To 10000
   整年花費加通膨 = 每月花費 * 12 * (1 + 通膨) ^ i
   本金 = 本金 - (整年花費加通膨 - (本金 * 配息) - 退休金)
   If 本金 < 0 Then Y = i + 1: Exit For
Next
End Function
作者: Andy2483    時間: 2024-3-22 14:46

本帖最後由 Andy2483 於 2024-3-22 16:43 編輯

回復 3# Andy2483

沒有考慮到 花不完 的情況,學習方案如下:
Option Explicit
Function Y(本金&, 每月花費&, 通膨#, 配息#, 退休金&)
Dim i&, 整年花費加通膨&, 原本金&
原本金 = 本金
On Error Resume Next
For i = 1 To 10000
   整年花費加通膨 = 每月花費 * 12 * (1 + 通膨) ^ i
   本金 = 本金 - (整年花費加通膨 - (本金 * 配息) - 退休金)
   If 本金 < 0 Then
      Y = i + 1: Exit Function
   End If
Next
End Function
'======================================
補充:以上這邏輯好像不對,如果花費50000,前幾年本金會增加(本金>9000000),但是第18年開始會減少(本金<9000000)
不知道怎麼處理?? 請各位前輩指教
作者: yc1031    時間: 2024-3-26 10:28

回復 3# Andy2483


感動!  有人回覆了

測試是沒問題的,  原來要用到VBA才能算..

再次謝謝你




歡迎光臨 麻辣家族討論版版 (http://forum.twbts.com/)