FormatNumber [VBA]

Nagbabalik ng string na may nakalapat na pag-format ng numero sa isang numeric na expression.

warning

Ang pare-pareho, function o bagay na ito ay pinagana sa pahayag Opsyon VBASupport 1 inilagay bago ang executable program code sa isang module.


Syntax:


        FormatNumber( expression As Variant, [numDigitsAfterDecimal As Integer], [includeLeadingDigit As Integer], _
            [useParensForNegativeNumbers As Integer], [groupDigits As Integer] ) As String
    

Ibinalik na halaga:

String

Mga Parameter:

pagpapahayag : Kinakailangan. Isang numeric na expression na ipo-format. Kung pagpapahayag ay isang string, pagkatapos ay kailangang ma-localize ang decimal at thousands separator.

numDigitsAfterDecimal : Opsyonal. Isang numeric na halaga na tumutukoy sa bilang ng mga digit na dapat ipakita pagkatapos ng decimal. Kung aalisin, magde-default ito sa value -1, ibig sabihin ay dapat gamitin ang mga default na setting para sa locale ng user interface.

isama angLeadingDigit : Opsyonal. A vbTriState enumeration value, na tumutukoy kung ang isang nangungunang zero ay dapat ipakita para sa mga fractional na halaga.

gumamit ngParensForNegativeNumbers : Opsyonal. A vbTriState enumeration value na tumutukoy kung ang mga negatibong numero ay dapat na nakalagay sa panaklong.

groupDigits : Opsyonal. A vbTriState ang halaga ng enumeration na tumutukoy sa numero ay dapat igrupo (sa libu-libo, atbp.), gamit ang delimiter ng pangkat na tinukoy sa mga setting ng rehiyon ng system.

Mga error code:

13 Hindi tugma ang uri ng data

Halimbawa:


        Sub TestFormatNumber
        testName = "Test 1: positive, 2 decimals"
        str2 = "12.20"
        str1 = FormatNumber("12.2", 2, vbFalse, vbFalse, vbFalse)
        msgbox( "FormatNumber returned: " + str1 + ", Expected: " + str2)

        testName = "Test 2: negative, 20 decimals, use leading zero"
        str2 = "-0.20000000000000000000"
        str1 = FormatNumber("-.2", 20, vbTrue, vbFalse, vbFalse)
        msgbox( "FormatNumber returned: " + str1 + ", Expected: " + str2)

        testName = "Test 3: negative, 20 decimals, no leading zero"
        str2 = "-.20000000000000000000"
        str1 = FormatNumber("-0.2", 20, vbFalse, vbFalse, vbFalse)
        msgbox( "FormatNumber returned: " + str1 + ", Expected: " + str2)

        testName = "Test 4: negative, no leading zero, use parens"
        str2 = "(.20)"
        str1 = FormatNumber("-0.2", -1, vbFalse, vbTrue, vbFalse)
        msgbox( "FormatNumber returned: " + str1 + ", Expected: " + str2)

        testName = "Test 5: negative, default leading zero, use parens"
        str2 = "(0.20)"
        str1 = FormatNumber("-0.2", -1, vbUseDefault, vbTrue, vbFalse)
        msgbox( "FormatNumber returned: " + str1 + ", Expected: " + str2)

        testName = "Test 6: group digits"
        str2 = "-12,345,678.00"
        str1 = FormatNumber("-12345678", -1, vbUseDefault, vbUseDefault, vbTrue)
        msgbox( "FormatNumber returned: " + str1 + ", Expected: " + str2)
        End Sub
    

Mangyaring suportahan kami!