FormatPercent [VBA]
Renvoie une chaîne avec une mise en forme numérique appliquée à une expression numérique. Un signe de pourcentage est ajouté à la chaîne renvoyée.
Cette constante, fonction ou objet est activé avec l'instruction Option VBASupport 1 placée avant le code exécutable dans un module.
FormatPercent( expression, [numDigitsAfterDecimal As Integer], [includeLeadingDigit As Integer], _
[useParensForNegativeNumbers As Integer], [groupDigits As Integer] ) As String
String
expression : requis. Expression numérique à formater. Si expression est une chaîne, la décimale et le séparateur de milliers doivent être localisés.
numDigitsAfterDecimal : facultatif. Une valeur numérique indiquant le nombre chiffres qui doit être affiché après la décimale. Si omis, la valeur par défaut est -1, signifiant que le paramétrage par défaut de la locale de l'interface utilisateur doit être utilisé.
includeLeadingDigit : facultatif. Une valeur d'énumérationvbTriState, indiquant si un zéro non significatif doit être affiché pour les valeurs fractionnelles.
-
vbTrue ou -1 : affiche un zéro non significatif
-
vbFalse ou 0 : n'affiche pas de zéros non significatifs
-
vbUseDefault ou -2 : utilise les paramètres locaux de l'interface utilisateur. C'est le paramétrage par défaut lorsqu'il est omis.
useParensForNegativeNumbers : facultatif. Une valeur d'énumération vbTriState indiquant si les nombres négatifs doivent être entourés par des parenthèses.
-
vbTrue ou -1 : utiliser des parenthèses pour les nombres négatifs.
-
vbFalse ou 0 : ne pas afficher les parenthèses.
-
vbUseDefault ou -2 : identique à vbFalse. C'est le paramètre par défaut lorsqu'il est omis.
groupDigits : facultatif. Une valeur d'énumérationvbTriState indiquant que les nombres doivent être groupés (en milliers, etc.) en utilisant le délimiteur de groupe qui est spécifié dans les paramètres régionaux du système.
-
vbTrue ou -1 : grouper les chiffres.
-
vbFalse ou 0 : ne pas grouper les chiffres.
-
vbUseDefault ou -2 : identique à vbFalse. C'est le paramètre par défaut lorsqu'il est omis.
13 le type de données ne correspond pas
Sub TestFormatNumber
Const UseComputerRegionalSettings = -1
MsgBox FormatPercent(12.2, NumDigitsAfterDecimal:=2) ' 1220.00% si l'interface utilisateur sélectionnée est en anglais.
MsgBox FormatPercent("-,2", 2, IncludeLeadingDigit:=vbTrue) ' -20,00% si l'interface utilisateur est en français
MsgBox FormatPercent("-0.2", 2) ' -20.00% pour en-US, -0,00 pour fr-CA, de-AT ou pt-BR
MsgBox FormatPercent(-0.2, UseComputerRegionalSettings, UseParensForNegativeNumbers:=vbTrue) ' (20,00)% si pt-BR
MsgBox FormatPercent("-0,2", UseComputerRegionalSettings, vbUseDefault, vbTrue) ' (20,00)% si allemand
MsgBox FormatPercent("-12345678", -1, vbUseDefault, vbUseDefault, GroupDigits:=vbTrue) ' -1 234 567 800,00% pour fr-BE
End Sub