2

我想在 Excel 表单的文本框中显示一个数字。报告,但是我只想显示任何小数点,如果它们存在并且我只想显示 2 个小数位。

例如,如果数字是 12,那么我想显示 12

如果数字是 12.1 那么我想显示 12.10

如果数字是 12.126 那么我想显示 12.13

目前我有以下代码,它没有显示小数点:

Me.Amount.Value = Format(Me.Amount, "#,###")
4

1 回答 1

2

您可以编写一个函数来有条件地返回两个格式字符串之一:

Function GetFormatString(varValue As Variant) As String
    Dim dblValue As Double
    If IsNumeric(varValue) Then
        dblValue = CDbl(varValue)
        If dblValue = Int(dblValue) Then
            GetFormatString = "#,###"
        Else
            GetFormatString = "#,###.00"
        End If
    End If
End Function

Private Sub Amount_AfterUpdate()
    Dim strFormat As String
    strFormat = GetFormatString(Me.Amount.Value)
    Me.Amount.Value = Format(Me.Amount.Value, strFormat)
End Sub 
于 2012-01-05T23:59:11.057 回答