无论为 IncludeLeadingDigit 传递什么值,为什么 FormatNumber() 都不显示分数的前导零?

Why doesn't FormatNumber() display leading zero for a fraction whatever value is passed for IncludeLeadingDigit?

以下代码:

WScript.Echo FormatNumber(0.123, 0)
WScript.Echo FormatNumber(0.123, 1)
WScript.Echo FormatNumber(0.123, 2)
WScript.Echo FormatNumber(0.123, 0, TristateTrue)
WScript.Echo FormatNumber(0.123, 1, TristateTrue)
WScript.Echo FormatNumber(0.123, 2, TristateTrue)
WScript.Echo FormatNumber(0.123, 0, TristateFalse)
WScript.Echo FormatNumber(0.123, 1, TristateFalse)
WScript.Echo FormatNumber(0.123, 2, TristateFalse)
WScript.Echo FormatNumber(0.123, 0, TristateUseDefault)
WScript.Echo FormatNumber(0.123, 1, TristateUseDefault)
WScript.Echo FormatNumber(0.123, 2, TristateUseDefault)

输出为:

0
0,1
0,12

,1
,12

,1
,12

,1
,12

任何人都可以向我解释为什么传递 TristateTrueTristateFalse 没有区别 - 或者 TristateUseDefault 以及 -?

仅供参考:

FormatNumber(Expression [,NumDigitsAfterDecimal [,IncludeLeadingDigit [,UseParensForNegativeNumbers [,GroupDigits]]]])

IncludeLeadingDigit

Optional. Tristate constant that indicates whether or not a leading zero is displayed for fractional values. See Settings section for values.

顺便说一句,这是我计算机在 Windows 10 Pro 64 位(法语)上的区域设置(我应该有前导零!!!):

应要求,我的评论作为答复:

您需要在脚本中定义这些常量:

Const TristateUseDefault = -2
Const TristateTrue = -1
Const TristateFalse = 0

提示:通过使用 Option Explicit 启动脚本,将显示有关未定义变量的错误。