共用方式為


Decimal、 和FloatValue函數

Functions 適用對象
Decimal
Float
Copilot Studio 桌面流程 Dataverse 公式欄 Power Platform CLI Dataverse 函數
Value 畫布應用程式 Copilot Studio 桌面流程 Dataverse 公式欄 模型導向應用程式 Power Platform CLI Dataverse 函數 Power Pages

將文字字串或其他類型轉換為數字。

Description

注意

Power Apps 僅支援函 Value 式,並傳回值 Float 。 很快就會新增對 和 DecimalFloat 函數的支援。

使用 DecimalFloatValue 函數,將包含數字字元的文字字串轉換為數值。 當您需要對使用者以文字形式輸入的數字計算時,請使用這些函式。 這些函式也可用於將其他類型轉換為數字,例如日期/時間和布林值。

Value 函式會傳回您正在使用的 Power Fx 主機的預設數值資料類型,這通常是 Decimal 大部分情況下的最佳選擇。 當您需要特定案例的特定資料類型時,請使用 Decimal and Float 函數,例如具有非常大數字的科學計算。 有關使用這些資料類型的更多詳細資訊,請參閱資料類型的數字部分

不同語言對 ,. 有不同的解釋。 預設文字是以目前使用者的語言解讀。 您可以使用 Language 函式傳回的相同語言標記指明要對語言標記使用的語言。

字串格式的注意事項︰

  • 此字串前面可能會加上目前語言的貨幣符號。 此貨幣符號會被忽略。 不會忽略其他語言的貨幣符號。
  • 此字串結尾可能會加上百分比符號 (%),表示這是百分比。 該數字會先除以 100 再傳回。 百分比和貨幣符號不可混用。
  • 字串可能會使用科學記號標記法,將 12 x 103 表示為 "12e3"。

如果數字的格式不正確,這些函式將傳回錯誤。

若要轉換日期和時間值,請使用 DateValueTimeValueDateTimeValue 函式。

語法

Decimal字串 [, 語言標籤 ] )
Float字串 [, 語言標籤 ] )
Value字串 [, 語言標籤 ] )

  • string - 必需。 要轉換為數值的字串。
  • LanguageTag - 可選。 用來剖析字串的語言標記。 若未指定,系統會使用目前使用者所用的語言。

Decimal動態
Float動態
Value動態

  • 動態 - 必要。 代表數字的動態值。 可接受的值取決於非類型化的提供者。 對於 JSON,動態值應為 JSON 數字、布林值或可轉換為數字的文字。 請記住,與外部系統通訊時,需要著重考慮地區相關的格式。

範例

執行這些公式的使用者位於美國,並已選取英文做為語言。 Language 函式傳回 "en-US"。 Power Fx 主機預設會使用 Decimal

Value 和 Decimal

由於我們使用的主機是預設 Decimal 的, ValueDecimal 並且會傳回相同的結果。

公式 Description Result
Value( "123.456" )
Decimal( "123.456" )
將使用預設語言 "en-US",其使用句點作為小數分隔符號。 123.456 (Decimal
Value( “123.456”, “es-ES” )
Decimal( “123.456”, “es-ES” )
"es-ES" 是西班牙的西班牙文語言標記。 在西班牙,句點是千位分隔符號。 123456 (Decimal
Value( "123,456" )
Decimal( "123,456" )
將使用預設語言 "en-US",其使用逗號作為千位分隔符號。 123456 (Decimal
Value( “123,456”, “es-ES” )
Decimal( “123,456”, “es-ES” )
"es-ES" 是西班牙的西班牙文語言標記。 在西班牙,逗號是小數分隔符號。 123.456 (Decimal
Value( “12.34%” )
Decimal( “12.34%” )
字串結尾的百分比符號表示這是百分比。 0.1234 (Decimal
Value( “12.34 美元” )
Decimal( “12.34 美元” )
目前語言的貨幣符號會被忽略。 12.34 (Decimal
Value( “24e3” )
Decimal( “24e3” )
24 x 103 的科學記號標記法。 24000 (Decimal
Value( 真實 )
Decimal( 真實 )
將布林值轉換為數字,0 表示 False ,1 表示 True 1 Decimal

Float

Float 函數將具有與上述非常接近的結果。 由於 123.456 無法精確表示 Float,因此結果是非常接近的近似值 (123.45600000000000003069544618484E2),複合捨入誤差計算可能會導致非預期的結果。 結果類型將改為。Float

不同之處在於使用更大或更小的數字。

公式 Description Result
Float( 1e100 ) 因為常值數字 1e100 超出了 的 Decimal範圍,這會導致在呼叫 Float 函數之前發生錯誤。 錯誤(溢出)
Decimal( 1e100 ) 與函數相同的 Float 問題。 錯誤(溢出)
Float( “1e100” ) 文字字串中的數字在數字範圍內 Float 1e100 Float
Decimal( “1e100” ) 文字字串中的數字超出了數字範圍 Decimal 錯誤(溢出)
Float( "10000000000.0000000001" ) 文字字串中的數字在數字範圍內 Float 。 但是,該數字需要比 a Float 可以提供的更高的精度,並且會被截斷。 1 (Float
Decimal( "10000000000.0000000001" ) 文字字串中的數字在數字的 Decimal 範圍和精確度內。 100000000000.0000000001 (Decimal