Как установить количество десятичных разрядов для значения, возвращаемого в msgbox, после выполнения простых вычислений в VBA excel 2010
В настоящее время я использую простой msgbox calc для возврата вычисленного значения. Как я могу ограничить количество десятичных знаков, показанных в возвращаемом значении в ответе msgbox.
вот сценарий!
Sub CalcmsgboxHect()
On Error Resume Next
num = InputBox("Please Enter The Number Of Acres You Would Like To Calculate Into Hectares ")
MsgBox num * 0.404686 & " Is the Number Of Hectares."
End Sub
1 ответ
Решение
Ну вот. Это применяет формат с двумя десятичными разрядами и разделителем тысяч:
РЕДАКТИРОВАТЬ: обернут в IF, чтобы пропустить, если num = 0.
Sub CalcmsgboxHect()
Dim num As Double
num = Application.InputBox(prompt:="Please Enter The Number Of Acres You Would Like To Calculate Into Hectares ", Type:=1)
If num <> 0 Then
MsgBox Format(num * 0.404686, "#,##0.00") & " Is the Number Of Hectares."
End If
End Sub
В качестве бонуса я объявил num
как Double
(опусти свой безрассудный прозвище). Также я использовал Application.Inputbox
, которые позволяют указать и тип ввода. Тип входа 1
означает, что пользователь должен ввести номер. Это может позволить вам избавиться от On Error Resume Next
линия.