適用於: 畫布應用程式
Copilot Studio
桌面流程
Dataverse 公式欄
模型導向應用程式
Power Platform CLI
Dataverse 函數
Power Pages
轉換任何值並將數字或日期/時間值格式化為文字字串。
描述
此 Text 函式會根據下列其中一種引數類型來格式化數字或日期/時間值:
- 預先定義的日期/時間格式,需使用 DateTimeFormat 列舉指定。 建議針對日期與時間使用此方法,因為它會自動調整每個使用者的語言與區域。
- 自訂格式包含定義的預留位置字串,例如數字是否顯示小數點分隔符號和日期,會將月、月份顯示為縮寫或是將月份指定為數字。 Power Apps 支援 Microsoft Excel 的預留位置子集。 在這個字串中,語言預留位置指定解釋其他預留位置的語言。 如果自訂格式包括句號 (例如語言格式預留位置),則指定期間是否為小數點分隔符號 (ja-JP) 或千分位分隔符號 (es-ES)。
請參閱 處理日期和時間 以取得詳細資訊。
此 Text 函式也可以使用預設格式將任何資料類型轉換成文字表示法。 使用此類型可將非文字值傳遞至文本功能,例如 Len、Right 和 IsMatch。
預先定義的日期/時間格式
在這些範例中,使用的日期和時間是在 [時區] 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 | 顯示月份縮寫 (Jan 到 Dec)。 |
| mmmm | 顯示月份全名 (January 到 December)。 |
| d | 以無前置零的數字顯示月份日期。 |
| dd | 依適當情況以有前置零的數字顯示月份日期。 |
| ddd | 顯示星期幾縮寫 (Sun 到 Sat)。 |
| dddd | 顯示星期幾全名 (Sunday 到 Saturday)。 |
| yy | 以兩位數數字顯示年份。 |
| yyyy | 以四位數數字顯示年份。 |
| h | 以無前置零的數字顯示小時。 |
| hh | 視需要以有前置零的數字顯示小時。 如果格式包含 AM 或 PM,將以 12 小時制顯示小時。 否則,會以 24 小時制顯示小時。 |
| m | 以無前置零的數字顯示分鐘。 此佔位符必須緊接在 h 或 hh 代碼之後或緊接在 ss 代碼之前;否則, Text 會傳回月份,而不是分鐘。 |
| mm | 依適當情況以有前置零的數字顯示分鐘。 此預留位置必須緊接在 h 或 hh 預留位置之後或緊接在 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提供語言標籤來覆寫此預設值。
語法
Text( NumberOrDateTime, DateTimeFormatEnum [, 結果語言標籤 ] )
- NumberOrDateTime - 必需。 要格式化的數字或日期/時間值。
- DateTimeFormat- 必需。 DateTimeFormat 列舉的成員。
- ResultLanguageTag - 可選。 針對結果文字使用的語言標記。 根據預設,會使用目前使用者的語言。
Text( NumberOrDateTime, CustomFormat [, 結果語言標籤 ] )
- Number - 必填。 要格式化的數字或日期/時間值。
- CustomFormat - 必需。 以雙引號括住的一個或多個預留位置。
- ResultLanguageTag - 可選。 針對結果文字使用的語言標記。 根據預設,會使用目前使用者的語言。
Text(任意 值 )
- AnyValue - 必需。 轉換為文字表示的值。 使用預設格式。
Text ( 動態 )
範例
除非另行指定,否則執行這些公式的使用者位於美國,並已選取英文做為語言。 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” ) | 使用預留位置字元的格式︰
|
"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" |