此页面教你如何在Excel中创建VBA一个简单的贷款计算器。该表包含以下ActiveX控件:两个滚动条和两个选项按钮。

Loan Calculator in Excel VBA

注:下面的说明不教你如何格式的工作表。我们假设你知道如何改变字体类型,插入的行和列,添加边框,改变背景颜色等

执行以下步骤来创建贷款计算器:

1.添加两个滚动条控制。从开发人员选项卡,点击插入,然后点击滚动条中的ActiveX控件部分。

Create Scroll Bars

2.添加两个选项按钮。从开发人员选项卡,点击插入,然后点击选项按钮的ActiveX控件部分。

Create Option Buttons

更改滚动条控件的下列属性(确保设计模式中选择)。

3.用鼠标右键单击第一个滚动条控件,然后单击属性。设置最低为0,最高为20,SmallChange为0,LargeChange至2

4.用鼠标右键单击在第二滚动条控件,然后单击属性。设置最小为5,最大为30,SmallChange 1,LargeChange至5,并且LinkedCell到F8。

说明:当你点击箭头,滚动条值上升或下降SmallChange。当滑块和箭头之间点击,滚动条值上升或下降LargeChange。

创建工作表更改事件。添加到工作表更改事件代码将被Excel VBA,当你在工作表上更改单元格执行。

5.打开Visual Basic编辑器。

6.双击工作表Sheet1(Sheet1中)在项目资源管理器。

7.从左边的下拉列表中选择工作表,并从右侧下拉列表中选择更改。

Worksheet Change Event in Excel VBA

8.工作表更改事件侦听Sheet1上的所有变化。我们只希望Excel VBA运行计算子如果事情在小区D4变化。

要做到这一点,添加以下代码行的工作表更改事件(更多关于计算子以后)。

If Target.Address = "$D$4" Then Application.Run "Calculate"

9.获取细胞F6权比例(更改单元格F6以百分比的形式)。用鼠标右键单击第一个滚动条控件,然后单击查看代码。添加以下代码行:

Private Sub ScrollBar1_Change()

Range("F6").Value = ScrollBar1.Value / 100

Application.Run "Calculate"

End Sub

10.鼠标右键单击第二个滚动条控件,然后单击查看代码。添加以下代码行:

Private Sub ScrollBar2_Change()

Application.Run "Calculate"

End Sub

11.鼠标右键点击第一个选项按钮控件,然后单击查看代码。添加以下代码行:

Private Sub OptionButton1_Click()

If OptionButton1.Value = True Then Range("C12").Value = "Monthly Payment"

Application.Run "Calculate"

End Sub

12.鼠标右键点击第二个选项按钮控件,然后单击查看代码。添加以下代码行:

Private Sub OptionButton2_Click()

If OptionButton2.Value = True Then Range("C12").Value = "Yearly Payment"

Application.Run "Calculate"

End Sub

13.时间创建子。你可以通过我们的功能和次章,详细了解潜艇。如果你是在赶时间,只需将命名计算为一个模块子(在Visual Basic编辑器,单击插入,模块)。

Sub Calculate()

Dim loan As Long, rate As Double, nper As Integer

loan = Range("D4").Value

rate = Range("F6").Value

nper = Range("F8").Value

If Sheet1.OptionButton1.Value = True Then

rate = rate / 12

nper = nper  12

End If

Range("D12").Value = -1  WorksheetFunction.Pmt(rate, nper, loan)

End Sub

说明:子得到正确的参数为工作表函数PMT中。在Excel中的PMT函数计算基于固定付款和固定利率贷款支付。如果您每月付款(Sheet1.OptionButton1.Value = TRUE)时,Excel VBA使用率/ 12 rate和nper * 12 NPER(付款总数)。其结果是负数,因为支付被认为是借方。相乘的结果-1给出了肯定的结果。

Loan Calculator Result