號碼格式

如果「格式」屬性不以百分比符號 (%) 開頭,並且不包含任何 (@) 符號,則將根據號碼格式化代碼進行格式化。 這種格式化要求「字串」是一個浮點值。 「格式」屬性中支援以下格式指定元︰

指定元

描述

「0」數字預留位置

如果被格式化的值在格式字串中「0」出現的位置上有一個數字,那麼該數字將被複製到輸出字串中。 否則,「0」將儲存於輸出字串的那個位置。

# 數字預留位置

如果被格式化的值在格式字串中「#」出現的位置上有一個數字,那麼該數字將被複製到輸出字串中。 否則,輸出字串中的該位置不會儲存任何內容。

.小數點

格式字串中的第一個字元「.」決定了十進制分隔符在格式化值中的位置;任何額外的「.」字元將被忽略。

, 千位分隔符

如果格式字串包含一個或多個「,」字元,則輸出將在小數點左邊的每組三位數之間加入千位分隔符。 格式字串中「,」字元的位置和數量不影響輸出,除非指示使用了千位分隔符。

E+ 科學標記法

如果格式字串中包含「E+」、「E-」、「e+」或「e-」中的任何一個字串,則使用科學標記法對數字進行格式化。 一組最多由四個「0」字元組成的字元可以緊跟在「E+」、「E-」、「e+」或「e-」之後,以確定指數中的最小位數。 「E+」和「e+」格式導致正指數輸出一個加號,負指數輸出一個減號。 「E-」和「e-」格式僅輸出負指數的符號字元。

'xx'/"xx"

用單引號或雙引號括起來的字元按原樣輸出,不會影響格式化。

;

這個字元在格式字串中分隔正數、負數和零。

格式字串中小數點前最左邊的「0」和格式字串中小數點後最右邊的「0」的位置決定了輸出字串中始終存在的數字範圍。

被格式化的數字總是四捨五入到小數點右邊有多少位數字預留位置(「0」或「#」)。 如果格式字串不包含小數點,則被格式化的值將四捨五入到最接近的整數。

如果被格式化的數字的小數分隔符左邊的數字比格式字串中「.」字元左邊的數字預留位置的數字要多,那麼多餘的數字將在第一個數字預留位置之前輸出。

為了允許正、負和零值的不同格式,格式字串可以包含一到三個由分號分隔的區段︰

  • 一個區段︰格式字串適用於所有值。
  • 兩個區段︰第一個區段適用於正值和零,第二個區段適用於負值。
  • 三個區段︰第一個區段適用於正值,第二個區段適用於負值,第三個區段適用於零。

如果負值的區段或零值的區段為空,即分號之間沒有任何內容分隔該區段,則使用正值的區段。

如果正值的區段為空,或者如果整個格式字串為空,則使用具有 15 位有效數字的通用浮點格式對該值進行格式化。 如果數值在小數點左邊有超過 18 位數字,並且格式字串沒有指定科學標記法,則也會使用常規浮點格式化。

下表列出了在「格式」和「字串」屬性中輸入的值的示例︰

格式屬性

字串屬性︰

1234

字串屬性︰

-1234

字串屬性︰

0.5

字串屬性︰

0

0

1234

-1234

0.5

0

0.00

1234.00

-1234.00

0.50

0.00

#.##

1234

-1234

0.5

 

#,##0.00

1,234.00

-1,234.00

0.50

0.00

#,##0.00;(#,##0.00)

1,234.00

(1,234.00)

0.50

0.00

#,##0.00;;零

1,234.00

-1,234.00

0.50

0.000E+00

0.000E+03

-1.234E+03

5.000E-01

0.000E+00

#.###E-0

1.234E3

-1.234E3

5E-1

0E0