共用方式為


Text 函數

適用於: 畫布應用程式 Copilot Studio 桌面流程 Dataverse 公式欄 模型導向應用程式 Power Platform CLI Dataverse 函數 Power Pages

轉換任何值並將數字或日期/時間值格式化為文字字串。

描述

Text 函式會根據下列其中一種引數類型來格式化數字或日期/時間值:

  • 預先定義的日期/時間格式,需使用 DateTimeFormat 列舉指定。 建議針對日期與時間使用此方法,因為它會自動調整每個使用者的語言與區域。
  • 自訂格式包含定義的預留位置字串,例如數字是否顯示小數點分隔符號和日期,會將月、月份顯示為縮寫或是將月份指定為數字。 Power Apps 支援 Microsoft Excel 的預留位置子集。 在這個字串中,語言預留位置指定解釋其他預留位置的語言。 如果自訂格式包括句號 (例如語言格式預留位置),則指定期間是否為小數點分隔符號 (ja-JP) 或千分位分隔符號 (es-ES)。

請參閱 處理日期和時間 以取得詳細資訊。

Text 函式也可以使用預設格式將任何資料類型轉換成文字表示法。 使用此類型可將非文字值傳遞至文本功能,例如 LenRightIsMatch

預先定義的日期/時間格式

在這些範例中,使用的日期和時間是在 [時區] UTC-7 小時的 2020 年四月 7 日星期二 8:26:59.180 PM。

DateTimeFormat 列舉 描述 範例 (使用 en-US)
LongDate 系列 四位數年、月份名稱、月份日期及星期幾。 月份名稱及星期幾不會縮寫。 "星期二,2020 年四月 7 日"
LongDateTime(長日期時間) 四位數年、月份名稱、月份日期及星期幾,加上小時 (12 小時制)、分、秒及 AM/PM 表示法。 月份名稱及星期幾不會縮寫。 "星期二,2020 年四月 7 日 8:26:59 PM"
LongDateTime24 四位數年、月份名稱、月份日期及星期幾,加上小時 (24 小時制)、分及秒。 月份名稱及星期幾不會縮寫。 "星期二,2020 年四月 7 日 20:26:59"
長期 小時 (12 小時制)、分、秒和 AM/PM 表示法。 「晚上8時26分59秒」
朗時 24 小時 (24 小時制)、分、秒。 "20:26:59"
ShortDate 四位數年份含數字月份與月份日期。 "4/7/2020"
短日期時間 四位數年份含數字月份與月份日期,加上小時 (12 小時制)、分、秒和 AM/PM 表示法。 「2020年4月7日晚上8時26分」
短日期時間 24 四位數年份含數字月份與月份日期,加上小時 (24 小時制) 和分鐘。 "4/7/2020 20:26"
短時間 小時 (12 小時制)、分和 AM/PM 表示法。 “晚上 8 點 26 分”
短時間 24 小時 (24 小時制) 和分。 "20:26"
UTC(世界標準時間) 將日期/時間值轉換為目前使用者的時區 UTC,並根據 ISO 8601 標準設定格式。 "2020-04-08T03:26:59.180Z"

數字預留位置

預留位置 描述
0 如果數字的位數少於格式中零的數目,則顯示無意義的零。 例如,如果您要將 8.9 顯示成 8.90,請使用格式 #.00
# 遵循與 0 (零) 相同的規則。 不過, Text 當數字在小數點兩邊的位數少於格式中的 # 符號時,不會傳回額外的零。 例如,如果自訂格式為 #.##,而要設定格式的數字為 8.9,則會顯示 8.9
(period) 顯示數字的小數點。 視自訂格式的語言而定,請參閱 全球應用程式 以取得詳細資料。
逗號 顯示數字中的千位分隔符號,通常用於千位數。 Text 如果格式包含以數字符號 (#) 或零括住的逗號,則會以逗點分隔群組。 視自訂格式的語言而定,請參閱 全球應用程式 以取得詳細資料。

如果某數字的小數點右側位數比格式中的預留位置多,則數字會四捨五入成與預留位置一樣多的小數位數。 如果小數點左側的位數比預留位置多,將顯示多餘的位數。 如果格式只包含小數點左側的井號 (#),則 1 以下數字的開頭將為小數點為 (例如 .47)。

日期與時間預留位置

預留位置 描述
m 以無前置零的數字顯示月份。
mm 依適當情況將月份顯示為有前置零的數字。
mmm 顯示月份縮寫 (JanDec)。
mmmm 顯示月份全名 (JanuaryDecember)。
d 以無前置零的數字顯示月份日期。
dd 依適當情況以有前置零的數字顯示月份日期。
ddd 顯示星期幾縮寫 (SunSat)。
dddd 顯示星期幾全名 (SundaySaturday)。
yy 以兩位數數字顯示年份。
yyyy 以四位數數字顯示年份。
h 以無前置零的數字顯示小時。
hh 視需要以有前置零的數字顯示小時。 如果格式包含 AMPM,將以 12 小時制顯示小時。 否則,會以 24 小時制顯示小時。
m 以無前置零的數字顯示分鐘。

此佔位符必須緊接在 hhh 代碼之後或緊接在 ss 代碼之前;否則, Text 會傳回月份,而不是分鐘。
mm 依適當情況以有前置零的數字顯示分鐘。

此預留位置必須緊接在 hhh 預留位置之後或緊接在 ss 預留位置之前。 否則, Text 會傳回月份,而不是分鐘。
s 以無前置零的數字顯示秒。
ss 依適當情況以有前置零的數字顯示秒。
f 以分數顯示秒。
AM/PM,a/p 以 12 小時制顯示小時。 Text 返回“AM”或“a”表示從午夜到中午的時間,返回“PM”或“p”表示從中午到午夜的時間

常值預留位置

您可以在格式字串中加入下列任一字元。 它們將按原樣出現在結果 Text 中。 另外保留其他字元做為日後的預留位置,請勿使用這些字元。

字元 描述
所有貨幣符號 美元符號、一分錢符號、歐元符號等
+ 加號
( 左括弧
: 冒號
^ 抑揚音符號 (插入號)
' 單引號
{ 左大括弧
< 小於符號
= 等號
- 減號
/ 斜線符號
) 右括弧
& 符號
~ 波狀符號
} 右大括弧
> 大於符號
  空白字元

全域應用程式

Text 函數具有全域感知能力。 該函式知道如何正確寫出各種語言的日期、時間、貨幣和數字。 為了作業,此函式需要兩種資訊:

  • 定製格式的語言: 對於製作者來說,應該如何解讀定製格式? 分隔符號字元 (.,) 在不同的語言中有不同的意義。 如果您指定自訂格式,則可以包含語言預留位置或採用預設值,這會反映裝置所設定的語言。 更容易一點,您可以使用其中一種 預定義的日期/時間格式,這種格式不限語言。
  • 結果的語言: 對於使用者,函數結果應該以什麼語言顯示? 月份和工作日的名稱必須使用應用程式使用者的適當語言,您可以透過在函數中 Text 新增第三個選擇性引數來指定。

這兩者中,您可以使用 語言標記 來指定語言。 若要查看支援的語言清單,請在公式列或右側窗格的 [進階] 索引標籤中輸入 Text( 1234, “”, ),然後捲動瀏覽第三個引數建議的地區設定清單。

語言預留位置

若要指定自訂格式的語言,請使用︰

預留位置 描述
[$-LanguageTag] LanguageTag 是從 Language 函數返回的語言 標記。 它可以只指明語言 (如 [$-en] 代表英文),或者也可以指明區域 (如 [$-en-GB] 進一步指定大英帝國)。

語言預留位置可以出現在自訂格式中的任何一處,但只能出現一次。

如果指定的自訂格式不含語言預留位置,且格式不明確,則會自動插入目前語言的語言標記。

[$-zh-US] 如果應用程式運行時此佔位元不存在,則假定為此佔位元。

Note

在未來版本中,此預留位置的語法可能會變更,以防與 Excel 支援的類似 (但不同) 預留位置混淆。

結果語言標記

結果 Text 包括月份、工作日和 AM/PM 指定的翻譯字串,以及適當的群組和小數位隔符號。

依預設,會 Text 使用執行應用程式的使用者語言。 Language 函式會傳回目前使用者慣用語言的語言標記。 您可以為第三個引數 Text提供語言標籤來覆寫此預設值。

語法

TextNumberOrDateTimeDateTimeFormatEnum [, 結果語言標籤 ] )

  • NumberOrDateTime - 必需。 要格式化的數字或日期/時間值。
  • DateTimeFormat- 必需。 DateTimeFormat 列舉的成員。
  • ResultLanguageTag - 可選。 針對結果文字使用的語言標記。 根據預設,會使用目前使用者的語言。

TextNumberOrDateTimeCustomFormat [, 結果語言標籤 ] )

  • Number - 必填。 要格式化的數字或日期/時間值。
  • CustomFormat - 必需。 以雙引號括住的一個或多個預留位置。
  • ResultLanguageTag - 可選。 針對結果文字使用的語言標記。 根據預設,會使用目前使用者的語言。

Text(任意

  • AnyValue - 必需。 轉換為文字表示的值。 使用預設格式。

Text動態

  • 動態 - 必要。 代表字串的動態值。 可接受的值取決於非類型化的提供者。 對於 JSON,如果動態值是數字或布林值,則會轉換為文字。

範例

除非另行指定,否則執行這些公式的使用者位於美國,並已選取英文做為語言。 Language 函式傳回 "en-US"。

號碼

公式 描述 結果
Text( 1234.59, "####.#" ) 格式化含有一個小數位數的數字。 "1234.6"
Text( 8.9, "#.000" ) 視需要在後方以零填補該數字的小數部分。 "8.900"
Text( 0.631, "0.#" ) 視需要在開頭以零填補該數字的整數部分。 "0.6"
Text( 12, "#.0#" )
Text( 1234.568, "#.0#" )
以零填補有一個小數位數之數字的小數部分,並加第二個小數位數 (若有提供)。 "12.0"
"1234.57"
Text( 12000, “$ #,###” )
Text( 1200000, “$ #,###” )
每三位數即放置一個千分位分隔符號,並包含貨幣符號。 “12,000 美元”
“1,200,000 美元”

日期/時間

  • 2015 年 11 月 23 日星期一2:37:47 PM
  • 美國太平洋時區 (UTC-8)
公式 描述 結果
Text( Now(), DateTimeFormat.LongDate ) 以目前使用者的語言與地區設定將格式設定為完整日期字串。 "星期一,2015 年十一月 23 日"
Text( Now()、DateTimeFormat.LongDateTime ) 以目前使用者的語言與地區設定將格式設定為使用 12 小時制的完整日期與時間字串。 "星期一,2015 年十一月 23 日 2:37:47 PM"
Text( Now(), DateTimeFormat.LongTime24 ) 將格式設定為 24 小時制的完整時間字串。 "14:37:47"
Text( Now()、DateTimeFormat.ShortDate ) 以目前使用者的語言與地區設定將格式設定為簡短日期字串。 "11/23/2015"
Text( Now(), “d-mmm-yy” ) 使用預留位置字元的格式︰
  • d 表示該月的個位數或兩位數日期
  • - 作為文字字元複製到結果
  • mmm 表示月份的三個字母縮寫
  • - 作為複製到結果的另一個文字字元
  • yy 表示年份的兩位數縮寫
"23-Nov-15"
Text(1448318857*1000,“嗯。 dd, yyyy (hh:mm:ss AM/PM)“) 若將來源值乘以 1000,則會以人類可讀格式顯示 Unix 日期時間值。 “2015 年 11 月 23 日(下午 02:47:37)”

全域應用程式

公式 描述 結果
Text(1234567.89, “[$-fr-FR]# ###,## €”, “fr-FR”) 將空格顯示為分組分隔符,將逗號顯示為小數點分隔符,並 顯示為貨幣符號。 “1 234 567,89 €”
Text(1234567,89;“[$-fr-FR]# ###,## €”) 如果來源資料遵循法語自訂,使用逗點做為小數點分隔符號,您必須將區域設定變更為法文,並以分號 (而不是逗點) 將參數隔開,以得到與上述相同的結果。 “1 234 567,89 €”
Text( 日期(2016,1,31),“dddd mmmm d” ) 以目前使用者的語言傳回工作日、月份及月份日期。 由於沒有任何預留位置與語言相關,因此不需要格式文字語言標記的預留位置。 “1月31日星期日”
Text( 日期(2016,1,31), “dddd mmmm d”, “es-ES” ) 以 "es-ES" 語言傳回工作日、月份及月份日期。 “多明戈埃內羅 31”

將值轉換成文字

公式 描述 結果
Text( 1234567.89 ) 將數字轉換為字串。 在小數點分隔符號之前或之後不可以有千位分隔符號或控制項數。如需更多控制,請將數位預留位置當做第二個引數提供。 "1234567.89"
Text( 日期時間值 ( “01/04/2003” ) ) 將日期/時間值轉換為文字的字串。 若要控制轉換,請提供 DateTimeFormat 枚舉的成員或自訂格式字串。 “2003 年 1 月 4 日凌晨 12:00”
Text( 真實 ) 將布林值轉換為字串。 "true"
Text( GUID() ) 將產生的 GUID 值轉換為字串。 "f8b10550-0f12-4f08-9aa3-bb10958bc3ff"
左 ( Text( GUID() ), 4 ) 傳回產生的 GUID 前四個字元。 "2d9c"