Excel函数 – 无法找出所需的方程式

我正在使用一个循环来计算每年增加15%后的结束租金。 这工作正常。

Private Sub Worksheet_Change(ByVal Target As range) On Error GoTo ErrorHandler '<--| be sure to catch any error and enable events handling back Select Case Target.Address Case "$F$15" 'Recalculate as necessary Using Looping amount = range("F12").Value For counter = 1 To range("F15").Value Debug.Print counter; amount = amount + (range("F12").Value * 0.15) Next range("F16").Value = amount 

对我来说问题是我希望有相同的循环来找出相反的情况。 我希望能够弄清楚什么样的初始租金将取决于input的年份。 (F21)假设我们知道结尾Rent。 Excel屏幕截图

所以需要弄清楚F20。 我问我的儿子,他用代数来解决问题,但用excel帮不了我。 感谢您的任何build议。

我重构了你的代码,同时使用循环方法和非循环方法:

 Private Sub Worksheet_Change(ByVal Target As range) On Error GoTo ErrorHandler '<--| be sure to catch any error and enable events handling back Dim factor As Double Dim period As Integer Dim amount As Double Select Case Target.Address Case "$F$15" period = Range("F15").Value amount = Range("F12").Value 'Recalculate as necessary Using Looping factor = 1 For counter = 1 To period Debug.Print counter; factor = factor + 0.15 Next Range("F16").Value = amount * factor 'alternate method without looping Range("F16").Value = amount * (1 + period * 0.15) 'which can also be written in VBA as [F16] = [F12] * (1 + [F15] * 0.15) Case "$F$21" period = Range("F21").Value amount = Range("F19").Value 'Recalculate as necessary Using Looping factor = 1 For counter = 1 To period factor = factor + 0.15 Next Range("F20").Value = amount / factor 'alternate method without looping Range("F20").Value = amount / (1 + period * 0.15) 'which can also be written in VBA as [F20] = [F19] / (1 + [F21] * 0.15)