PMT错误:参数数量错误或属性分配无效

杀手

我正在使用用户表单输入模型的数据。我想使用VBA中的PMT函数计算贷款所需的每月付款。我需要这个,这样我就可以将其值添加到每月总费用中。我提供了我编写的当前代码的屏幕截图。每次运行宏时,我都会得到“错误的参数数量或无效的属性分配”,我尝试了几种不同的方法来计算此值,但是我真的希望付款输入来自用户表单,因为我将有许多不同的输入。

只是为了澄清“ Val(txt_Loan-Amount)”,是对我已经创建的用户表单的引用,并用要从中提取数据的名称来命名每个输入框。

我已经尝试过通过手动添加数字来完成此操作,并且确实会计算付款。我假设错误是来自用户表单值

Dim FVal, PVal, APR, TotPmts, Payment
FVal = 0    ' Usually 0 for a loan.
PVal = Val(Txt_Loan_Amount)
APR = Val(Txt_Interest_Rate)
If APR > 1 Then APR = APR / 100    ' Ensure proper form.
TotPmts = Val(Txt_Amortized) * 12
MsgBox "Your payment will be " & Format(Payment) & " per month."

就像我上面提到的那样,我收到的错误是“参数数量错误或属性分配无效”,我不确定为什么会这样

达雷尔

您可以有1行IF / Then语句。如前所述,所有变量均为Variant如果输入WorksheetFunction.Pmt命令,它将告诉您变量应该是什么,即Arg1为Double,Arg2为Double。您的变量应该匹配。您可以在用户表单上测试您的输入,以确保它们符合要求。在确定您的APR为>或<1后,您需要将时间段转换为月度时转换为月率。在格式化时Payment,我在前面加了一个减号以显示为正数。

Dim PVal As Double
Dim APR As Double
Dim TotPmts As Double
Dim Payment As Double

PVal = Val(Txt_Loan_Amount) 'Based on input
APR = Val(Txt_Interest_Rate) 'Based on input
If APR > 1 Then APR = APR / 100    ' Ensure proper form.
APR = APR / 12 'Convert to monthly
TotPmts = Val(Txt_Amortized) * 12 'Using monthly
Payment = WorksheetFunction.Pmt(APR, TotPmts, PVal)

MsgBox "Your payment will be " & Format(-Payment, "$#,##0.00") & " per month."

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

错误的参数数量或使用类的无效属性分配

参数数量错误或属性分配集合添加无效

范围错误的参数数量或无效的属性分配

参数数量错误或uft中的属性分配无效

参数数量错误或属性分配无效:“ OracleNotification”

错误的参数数量或无效的属性分配(错误450)用户表单

错误450:参数数量错误或无效的属性分配Excel-Vba

VBA Excel:参数数量错误或调用函数的属性分配无效

Excel vba:类子:vba上的参数数量错误或属性分配无效

对于循环范围不起作用:错误的参数数量或无效的属性分配

尝试运行该程序,但出现错误“编译错误,参数数量错误或属性分配无效”

Xcopy错误:参数数量无效

当我的代码收到编译错误“参数数量错误或属性分配无效”时,如何从函数中获取字符串值

用途内置控件,但有错误:参数数目错误或属性分配无效

如何修复“未捕获(承诺)错误:参数数量无效”

如何修复nginx错误“参数数量无效”?

输入参数数量错误

ArgumentError:参数数量错误

模式的参数数量错误

IllegalArgumentException:参数数量错误

模板参数数量错误

编译错误“错误数量的参数或无效的属性分配”将文件夹对象传递给递归子

设置排除参数时,xcopy返回错误“参数数量无效”

新模型的参数数量错误

主厨Ruby发现错误的参数数量

SQL:函数 Sum() 的参数数量错误

打字稿参数数量错误

调用“||”时的参数数量或类型错误

Ruby Mailer:错误的参数数量