FormatPercent [VBA]

Returns a string with a number formatting applied to a numeric expression. A percent sign is appended to the returned string.

warning

Aquesta constant, funció o objecte s'activa mitjançant l'expressió Option VBASupport 1, col·locada abans del codi executable del programa en un mòdul.


Sintaxi:

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

Valor de retorn:

String

Paràmetres:

expression: Required. A numeric expression to be formatted. If expression is a string, then the decimal and thousands separator need to be localized.

numDigitsAfterDecimal Opcional. Un valor numèric que especifica el nombre de dígits que s'han de mostrar després del decimal. Si s'omet per defecte és el valor -1 que vol dir que s'han d'utilitzar els ajustaments predeterminats per a la configuració regional de la interfície d'usuari.

inclouLeadingDigit opcional. Un valor d'enumeració vbTriState que especifica si s'ha de mostrar un zero inicial per a valors fraccionaris.

useParensForNegativeNumbers opcional. Un valor d'enumeració vbTriState que especifica si els nombres negatius s'han d'encaixar en parèntesi.

GrupDigits opcional. Un valor d'enumeració vbTriState que especifiqui el nombre s'ha d'agrupar (fins a milers etc.) utilitzant el delimitador de grup que s'especifica a la configuració regional del sistema.

Codis d'error

13 Els tipus de dades no coincideixen

Exemple:

Sub TestFormatNumber
  Const UseComputerRegionalSettings = -1

  MsgBox FormatPercent(12.2, NumDigitsAfterDecimal:=2) ' 1220.00% if selected user interface is english

  MsgBox FormatPercent("-,2", 2, IncludeLeadingDigit:=vbTrue) ' -20,00% if french user interface

  MsgBox FormatPercent("-0.2", 2) ' -20.00% for en-US, -0,00 for fr-CA, de-AT or pt-BR

  MsgBox FormatPercent(-0.2, UseComputerRegionalSettings, UseParensForNegativeNumbers:=vbTrue) ' (20,00)% if pt-BR

  MsgBox FormatPercent("-0,2", UseComputerRegionalSettings, vbUseDefault, vbTrue) ' (20,00)% if german

  MsgBox FormatPercent("-12345678", -1, vbUseDefault, vbUseDefault, GroupDigits:=vbTrue) ' -1 234 567 800,00% for fr-BE

End Sub

Ens cal la vostra ajuda!