設定數字或日期/時間值顯示為文字字串時的格式。

說明

Text 函式會根據以下其中一種引數設定數字或日期/時間值的格式:

  • 預先定義的日期/時間格式,需使用 DateTimeFormat 列舉指定。 建議針對日期與時間使用此方法,因為它會自動調整每個使用者的語言與位置。
  • 自訂格式,由預留位置組成的文字字串。這些預留位置說明設定數字或日期/時間值格式的方式。 預留位置定義顯示的位數數目、是否使用千位分隔符號,以及顯示月份名稱的方式。 PowerApps 支援一個 Microsoft Excel 支援之預留位置的子集。

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

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

預先定義的格式 說明
DateTimeFormat.LongDate 完整的年、月、月份日期及星期幾。 月份名稱及星期幾全稱。
DateTimeFormat.LongDateTime 完整的年、月、月份日期及星期幾,加上小時 (12 小時制)、分、秒及 AM/PM 表示法。 月份名稱及星期幾全稱。
DateTimeFormat.LongDateTime24 完整的年、月、月份日期及星期幾,加上小時 (24 小時制)、分和秒。 月份名稱及星期幾全稱。
DateTimeFormat.LongTime 小時 (12 小時制)、分、秒和 AM/PM 表示法。 與 ShortTime 相同。
DateTimeFormat.LongTime24 小時 (24 小時制)、分、秒。 與 ShortTime24 相同。
DateTimeFormat.ShortDate 四位數的年份,及二位數的月份與月份日期。
DateTimeFormat.ShortDateTime 四位數的年份,及二位數的月份與月份日期,加上小時 (12 小時制)、分、秒和 AM/PM 表示法。
DateTimeFormat.ShortDateTime24 四位數的年份,及二位數的月份與月份日期,加上小時 (24 小時制)、分和秒。
DateTimeFormat.ShortTime 小時 (12 小時制)、分、秒和 AM/PM 表示法。 與 LongTime 相同。
DateTimeFormat.ShortTime24 小時 (24 小時制)、分和秒。 與 LongTime24 相同。
DateTimeFormat.UTC 將日期/時間值轉換為目前使用者的時區 UTC,並根據 ISO 8601 標準設定格式。

數字預留位置

預留位置 說明
0 () 如果數字的位數少於格式中零的數目,則顯示無意義的零。 例如,如果您要將 8.9 顯示成 8.90,請使用格式 #.00
# 遵循與 0 (零) 相同的規則。 但是,如果數字小數點任一側的位數少於格式中的 # 符號數目,則 Text不會傳回多餘的零。 例如,如果自訂格式為 #.##,而要設定格式的數字為 8.9,則會顯示 8.9
. (句點) 顯示數字的小數點。 視自訂格式的語言而定,請參閱全球應用程式以取得詳細資料。
, (逗號) 顯示數字中的千位分隔符號,通常用於千位數。 如果格式包含逗號,且逗號介於井號 (#) 或零之間,Text 會以逗號分隔千位數。 視自訂格式的語言而定,請參閱全球應用程式以取得詳細資料。

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

日期與時間預留位置

預留位置 說明
m 以無前置零的數字顯示月份。
mm 視需要將月份顯示為有前置零的數字。
mmm 顯示月份縮寫 (JanDec)。
mmmm 顯示完整月份名稱 (JanuaryDecember)。
d 以無前置零的數字顯示月份日期。
dd 視需要以有前置零的數字顯示月份日期。
ddd 顯示星期幾縮寫 (SunSat)。
dddd 顯示星期幾全名 (SundaySaturday)。
yy 以兩位數數字顯示年份。
yyyy 以四位數數字顯示年份。
h 以無前置零的數字顯示小時。
hh 視需要以有前置零的數字顯示小時。 如果格式包含 AMPM,將以 12 小時制顯示小時。 否則,會以 24 小時制顯示小時。
m 以無前置零的數字顯示分鐘。 注意:mmm 代碼必須緊接在 hhh 代碼之後,或緊接在 ss 代碼之前;否則,Text 會傳回月份,而不會傳回分鐘。
mm 視需要以有前置零的數字顯示分鐘。 注意:mmm 預留位置必須緊接在 hhh 預留位置之後,或緊接在 ss 預留位置之前。 否則,Text 會傳回月份而非分鐘。
s 以無前置零的數字顯示秒。
ss 視需要以有前置零的數字顯示秒。
f 以分數顯示秒。
AM/PMam/pmA/Pa/p 以 12 小時制顯示小時。 Text 針對午夜到中午這段時間傳回「AM」、「am」、「A」或「a」,並針對中午到午夜這段時間傳回「PM」、「pm」、「P」或「p」

常值預留位置

您可以在格式字串中加入下列任一字元。 這些字元會以原樣出現在 Text 的結果中。 還保留了其他字元做為之後的預留位置使用,請勿使用這些字元。

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

全球應用程式

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

  • 自訂格式的語言:對作者而言,自訂格式應如何解譯? 分隔符號字元 (.,) 在不同的語言中有不同的意義。 包含語言標記的特殊預留位置將處理此事項。 最簡單的地方是,預先定義的日期/時間格式是無關語言的。

  • 結果語言:對使用者而言,函式結果應以何種語言表示? 月份和工作日名稱必須以應用程式使用者使用的語言表示。 Text 函式的第三個引數 (選用) 將處理此事項。

對於這兩種名稱,將以語言加上語言標記來提供語言。 若要查看支援語言清單,請在公式列或進階檢視中輸入 Text( 1234, "", ),然後捲動針對第三個引數建議的地區設定清單。

自訂格式語言預留位置

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

預留位置 說明
[$-LanguageTag] LanguageTagLanguage 函式傳回的語言標記。 其格式可以只包含語言,例如 [$-en] 代表英文,也可以包含區域,例如 [$-en-GB] 以指定英國。

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

撰寫公式時,如果您未提供語言預留位置,且從全球語言的角度來看格式字串模稜兩可,則撰寫工具會自動為您目前的語言插入語言標記。

您的應用程式執行時若沒有此預留位置,系統會假設為 [$-en-US]

注意︰未來版本裡此預留位置的語法可能會變更,以防與 Excel 支援、類似但不同的預留位置混淆。

結果語言標記

Text 結果會顯示月份、工作日和 AM/PM 表示的字串,以及適當的千位數與小數分隔符號。

根據預設,Text 會使用執行該應用程式之使用者的語言。 Language 函式會傳回目前使用者慣用語言的語言標記。 您可以將第三個引數 (選用) 的語言標記提供給 Text,來覆寫此預設值。

語法

Text( Number, DateTimeFormatEnum [, ResultLanguageTag ] )

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

Text( Number, CustomFormat [, ResultLanguageTag ] )

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

範例

執行這些公式的使用者位於美國,並選取英文做為語言。 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 ) 以目前使用者的語言與地區設定將格式設定為完整日期字串。 「Monday, November 23, 2015」
Text( Now(), DateTimeFormat.LongDateTime ) 以目前使用者的語言與地區設定將格式設定為使用 12 小時制的完整日期與時間字串。 「Monday, November 23, 2015 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( 1234567.89, "[$-en-US]$ #,###" ) , 解譯成將每三個字元分隔的千位分隔符號,將 $ 解譯成貨幣符號。 當沒有小數位數可顯示時,將值捨入至下一個較大的整數。 [$-en-US] 在此情況下為選用,因為這是預設值。 「$ 1,234,568」
Text( 1234567.89, "[$-es-ES]€ #,###" ) , 解譯為小數點分隔符號,將 解譯為貨幣符號。 因為 [$-fr-FR] 只會決定格式字串的解譯方式,所以結果將使用預設「en-US」語言標記:. 中的字元 (句號) 做為小數分隔符號,$ 做為貨幣符號。 「$ 1234567.89」
Text( 1234567.89, "[$-es-ES]€ #,###", "es-ES" ) , 解譯為小數分隔符號。 結果語言標記已設定為「fr-FR」,這將會產生 , (逗號) 做為小數分隔符號, 做為貨幣符號。 「€ 1234567,89」
Text( Date(2016,1,31), "dddd mmmm d" ) 以目前使用者的語言傳回工作日、月份及月份日期。 由於沒有任何預留位置與語言相關,因此不需要格式文字語言標記的預留位置。 「Saturday January 31」
Text( Date(2016,1,31), "dddd mmmm d", "es-ES" ) 以「es-ES」語言傳回工作日、月份及月份日期。 「domingo enero 31」