Как округлить в VBA - PullRequest
1 голос
/ 20 мая 2019

Я использую worksheetFunction.pmt и мне нужно, чтобы вывод в msgbox был округлен до 2 десятичных знаков или чтобы отображалось только целое число.

Я объявил переменные как Double и попытался добавить Round в вывод msgbox, но получил ошибку времени выполнения 13. Я не могу понять, куда поместить функцию Round


Sub pmt()
Dim Sum, Rate, Period As Double
Sum = InputBox("Enter the sum of the loan")
Rate = InputBox("Enter the interest rate")
Period = InputBox("Enter the number of payments")
MsgBox "Your PMT is: $ " & WorksheetFunction.pmt(Rate, Period, -Sum) & ""
End Sub

Я ожидаю, что результат вернет только 2 десятичных знака.Можно ли округлить рабочий лист Function.pmt

1 Ответ

1 голос
/ 20 мая 2019

Просто используйте функцию VBA Round:

Sub pmt()
'Take care when naming your variables
'Dim dlbSum as Double, dblRate as Double, dblPeriod as Double
'Defining Period as Dboule doesn't make sense anyway
Dim Sum, Rate, Period As Double

Sum = InputBox("Enter the sum of the loan")

'You should consider error checking, entering the percentage symbol will create an error in the calculations
Rate = InputBox("Enter the interest rate")

Period = InputBox("Enter the number of payments")

MsgBox "Your PMT is: $ " & Round(WorksheetFunction.pmt(Rate, Period, -Sum), 2) & ""
End Sub
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...