TEXT 函數

Applies To
Excel for Microsoft 365 Excel for Microsoft 365 for Mac Excel 2024 Excel 2024 for Mac Excel 2021 Excel 2021 for Mac Excel 2019 Excel 2016

您可使用 TEXT 函數,以格式代碼來套用格式,藉此變更數字顯示的方式。 若您希望以更容易閱讀的格式顯示數字,或者是要合併數字與文字或符號,這個做法就相當實用。

注意

TEXT 函數會將數字轉換成文字,這可能會使在後續計算中難以參考。 最好將原始值保留在一個儲存格中,然後在另一個儲存格中使用 TEXT 函數。 之後,若您想要建立其他公式,請一律參照原始值,而非 TEXT 函數的結果。

技術詳細資料

語法

TEXT(value, format_text)

TEXT 函數語法具有下列引數:

引數名稱 描述
value 您想要轉換成文字的數值。
format_text 文字字串,其定義您要套用到提供值的格式。

概觀

以其最簡單的形式而言,TEXT 函數表示:

  • =TEXT(您要設定格式的值, "您要套用的格式代碼")

下列是常見範例,您可直接複製到 Excel 中來自行實驗。 請注意,格式代碼需置於雙引號內。

公式 描述
=TEXT(1234.567,"$#,##0.00") 貨幣代碼及千分位分隔符號與 2 位數小數位數,例如「$1,234.57」。 請注意,Excel 會將值四捨五入至 2 位數小數位數。
=TEXT(TODAY(),"MM/DD/YY") 今天的日期以 MM/DD/YY 格式表示,例如 03/14/12
=TEXT(TODAY(),"DDDD") 今天是星期幾,例如星期一
=TEXT(NOW(),"H:MM AM/PM") 目前的時間,例如「1:29 PM」
=TEXT(0.285,"0.0%") 百分比,例如「28.5%」
=TEXT(4.34 ,"# ?/?") 分數,例如「4 1/3」
=TRIM(TEXT(0.34,"# ?/?")) 分數,例如「1/3」。 請注意,這會使 TRIM 函數移除前置空格,並使用十進位值。
=TEXT(12200000,"0.00E+00") 科學記號標記法,例如「1.22E+07」
=TEXT (1234567898,“[<=9999999]###-### ( ) ###-##”) 特殊 (電話號碼),例如「(123) 456-7898」
=TEXT(1234,"0000000") 新增前置字元零 (0),例如「0001234」
=TEXT(123456,"##0° 00' 00''") 自訂 - 經緯度

注意

  • 雖然您可以使用 TEXT 函數變更格式設定,但這不是唯一的方法。 您可以在沒有公式的情況下變更格式,方法是按 CTRL+1 (或 Mac) 上的 MAC Command 按鈕圖示+1 的影像,然後從 [ 儲存格>編號 格式] 對話方塊中挑選您想要的格式。
  • 如果您單獨使用 “MM” 或 “mm”,則會傳回月份。 如果您將它與小時的 “HH” 或秒的 “SS” 組合,它將返回分鐘,例如。 “HH:MM”, “MM:SS”

下載我們的範例

您可下載範例活頁簿,取得本文所列的全部 TEXT 函數範例,以及部分額外範例。 您可以直接沿用,也可以建立自己的 TEXT 函數格式代碼。

下載 Excel TEXT 函數範例

其他可用的格式代碼

您可以使用 [儲存格格式 ] 對話方塊來尋找其他可用的格式代碼:

  1. Ctrl+1 (Mac) 的 MAC Command 按鈕圖示+1 影像,以顯示 [ 儲存格格式] 對話方塊。
  2. [數值 ] 索引標籤中選取您想要的格式。
  3. 選取 [自訂 ] 選項。
  4. 您所需的格式代碼會顯示在 [類型] 方塊中。 在此情況下,請從 [類型] 方塊中選取分號 (;) 與 @ 符號以外的選項。 以下範例中,我們可以僅選取並複製 mm/dd/yy。
  5. Ctrl+C 複製格式代碼,然後按 Cancel 關閉 [ 儲存格格式] 對話方塊。
  6. 現在您只需按下 Ctrl+V,將格式代碼貼入 TEXT 公式中,像是 =TEXT(B2,"mm/dd/yy")。 請務必將格式代碼貼在引號內 (“format code”) ,否則 Excel 會提示您錯誤訊息。

使用 [設定儲存格>編號>自訂格式>] 對話方塊讓 Excel 為您建立格式字串的範例。

依類別分類的格式代碼

下列範例說明如何使用 [ 儲存格格式] 對話方塊,將不同的數字格式套用至您的值,然後使用 [自訂 ] 選項將這些 格式代碼 複製到 TEXT 函數。

選取數字格式

前置零

為什麼 Excel 會刪除我的前置零?

Excel 的設定是尋找儲存格中正在輸入的數字,而非看起來像文字的數字,如部分為數字或 SKU 的數字。 若要保留前置字元 0,請先將輸入範圍的格式設為 [文字],然後再貼上或輸入值。 選取要放置值的欄或範圍,然後使用 CTRL+1 開啟 [儲存格格式>] 對話方塊,然後在 [數值] 索引標籤上選取 [文字]。 現在 Excel 會保留您的前置零。

如果您已經輸入資料,而 Excel 已移除您的前置零,您可以使用 TEXT 函數加回來。 您可以參照具有值的頂端儲存格,並使用 =TEXT (value,“00000”) ,其中公式中的零數代表您想要的字元總數,然後複製並貼上至範圍的其餘部分。

使用 TEXT 設定前置零格式的範例。=TEXT (A2,00000) 如果由於某種原因需要將文字值轉換回數字,您可以乘以 1,例如 =D4*1,或使用 (--) 的雙一元運算子,例如 =--D4

顯示千分位分隔符號

如果格式包含以數字符號 (#) 或數字 0 括起來的逗號 (,),Excel 就會分隔千位數。 例如,如果格式字串為 「#,###」,Excel 會將數字 12200000 顯示為 12,200,000。

在數字預留位置之後的逗號表示以 1,000 為計的數字。 舉例來說,如果格式字串為 "#,###.0,",Excel 就會將數字 12200000 顯示為 12,200.0。

使用千位分隔符號的 TEXT 函數範例

注意

  • 千分位分隔符號取決於您的地區設定。 在美國地區是逗號,但在其他地區可能是小數點 (.)。
  • 千分位分隔符號適用於數字、貨幣與會計格式。

數字、貨幣格式與會計格式

以下是標準數字的範例 (僅限千分位分隔符號與小數)、貨幣與會計格式。 貨幣格式可讓您選擇插入貨幣符號,並與您的值貼齊,而會計格式則是會將數字符號靠儲存格左側對齊,並將值靠右對齊。 請注意,貨幣與會計格式代碼之間的差異如下,其中會計格式會使用星號 (*) 來區隔符號與值。

具有數字、貨幣和會計格式的 TEXT 函數範例若要尋找貨幣符號的格式代碼,請先按 Ctrl+1 (或 Mac) 上的 MAC Command 按鈕圖示+1 的影像,選取您想要的格式,然後從「符號」下拉式清單中選擇符號:

從 [儲存格格式] 對話方塊選取貨幣符號 然後按一下左側的「 自訂類別 部分, 然後複製格式代碼,包括貨幣符號。

TEXT 函數 - 自訂貨幣和符號

注意

TEXT 函數不支援色彩格式,因此如果您從 [儲存格格式] 對話方塊中複製包含色彩的數字格式代碼,例如:$#,##0.00_);[Red]($#,##0.00),TEXT 函數會接受此格式代碼,但不會顯示色彩。

日期

您可以使用 "M" (月)、"D" (日)、"Y" (年) 的組合來更改日期顯示方式。

月、日和年格式代碼 TEXT 函數中的格式代碼不區分大小寫,因此您可以使用 “M” 或 “m”、“D” 或 “d”、“Y” 或 “y”。

Excel 最有價值專家 Mynda Treacy Mynda 的建議...
如果您和來自不同國家/地區的使用者共用 Excel 檔案和報表,那麼您可能會想要在給他們的報表中使用他們的語言。 Excel MVP Mynda Treacy 在這篇以 不同語言顯示的 Excel 日期 一文中提供了很好的解決方案。 其中也包括您可以下載的活頁簿範例。

時間

您可以使用 "H" (小時)、"M" (分) 或 "S" (秒) 的組合,加上 "AM/PM" (12 小時制) 來更改時間顯示方式。

小時、分和秒的時間格式 如果您省略 “AM/PM” 或 “A/P”,則時間將根據 24 小時制顯示。

因為 “m” 可以是月份或分鐘,所以若要顯示分鐘,您必須使用 “h:m” 或 “hh:mm” 格式,Excel 才能正確顯示分鐘。 如果省略 “h”,則 Excel 會顯示月份值。 若要只顯示分鐘,請使用 RIGHT 函數,如範例所示。

TEXT 函數中的格式代碼不需區分大小寫,因此您可以使用 "H" 或 "h"、"M" 或 "m"、"S" 或 "s"、"AM/PM" 或 "am/pm"。

在 “h” (“[h]”) 周圍加上方括弧,告知 Excel 不要每隔 24 小時重設小時數。 換句話說,方括號允許您顯示總經過時間。 您可以使用方括弧以小時、分鐘和秒為單位顯示經過的時間。

百分比

您能以百分比 (%) 格式來更改小數數值的顯示方式。

百分比的格式代碼

分數

您能以分數 (?/?) 格式來更改小數數值的顯示方式。

分數的格式代碼

科學記號標記法

科學記號標記法是以 1 到 10 的十進制數字,並搭配 10 的次方相乘來顯示數字的方式。 常用於縮寫巨大數字的顯示方式。

科學記號的格式代碼

特殊格式

Excel 提供 4 種特殊格式:

  • 郵遞區號 - "00000"
  • 郵遞區號 +4 - "00000-0000"
  • 電話號碼 - “[=<9999999]###-##; (####) ###-#####”
  • 社會安全號碼 - "000-00-0000"

TEXT 函數的特殊格式 特殊格式會因地區設定而異,但如果您的地區設定沒有任何特殊格式,或是這些格式不符合您的需求,則可以透過 [儲存格>格式自訂] 對話方塊建立您自己的格式。

常見案例

TEXT 函數很少單獨使用,通常會搭配其他項目使用。 假設您想要合併文字和數值,例如「報表列印日期:03/14/12」或「每週收入:$66,348.72」。 您可以手動在 Excel 中輸入這些資訊,但這麼做就違反了讓 Excel 為您處理事務的目的。 很抱歉,當您合併文字和日期、時間、貨幣等格式化的數字時,Excel 不知道您要如何顯示它們,因此它會刪除數字格式設定。 這就是 TEXT 函數的用武之地,因為它允許您使用 格式代碼強制 Excel 按照您想要的方式格式化值,例如日期格式為 “MM/DD/YY”

在下列範例中,您將看到如果您嘗試結合文字和數字而不使用 TEXT 函數會發生什麼情況。 在這個例子中,我們使用 &) ( 符號來串連文字字串、空格 (“ ”) 和帶有 =A2&“ ”&B2 的值。

在沒有 TEXT 函數的情況下連接文字的範例 如您所見,Excel 已移除儲存格 B2 中日期的格式設定。 在下個範例中,您將會看到 TEXT 函數可如何協助您套用所需的格式。

使用 TEXT 函數連接文字的範例 我們更新的公式為:

  • 儲存格 C2:=A2&" "&TEXT(B2,"mm/dd/yy") - 日期格式

常見問題集

如何將數值轉換成文字,例如將「123」轉換成「One Hundred Twenty-Three」?

很抱歉,您無法使用 TEXT 函數來執行此操作;您必須使用 Visual Basic for Applications (VBA) 程式碼。 下列連結有方法: 如何在 Excel 中將數值轉換成英文單字。

我是否能變更文字大小寫?

是,您可以使用 UPPERLOWERPROPER 函數來達成此目的。 例如,=UPPER("hello") 會傳回 "HELLO"。

是否能使用 TEXT 函數加入新行 (分行符號),達到如同在儲存格中按下 Alt+Enter 的效果嗎?

是,但需要採取幾個步驟。 首先,選擇要發生此情況的一個或多個單元格,然後使用 Ctrl+1 調出“單元格格式>”對話框,然後“對齊>文本”控件>選中“自動換行”選項。 接下來,調整已完成的 TEXT 函數,然後在要換行的位置加入 ASCII 函數 CHAR(10)。 視最終結果的對齊方式而定,您可能需要調整欄的寬度。

38f8e0f1-99d8-4c4f-979a-dfd1bcde1bf7

在此情況下,我們使用了:="Today is: "&CHAR(10)&TEXT(TODAY(),"mm/dd/yy")

為什麼 Excel 會將我的數字項目轉換成這樣:1.22E+07

此動作稱為 科學標記法,如果儲存格 (s) 格式化為 [通用格式],Excel 會自動轉換超過 12 位數的數字,如果儲存格 (s) 格式化為 [數字],則會自動轉換 15 位數。 如果您需要輸入長數字字串,但不希望轉換它們,請在 Excel 中輸入或貼上值之前,將有問題的儲存格格式化為 文字

不同語言中所顯示的 Excel 日期

Excel 最有價值專家 Mynda Treacy Mynda 的建議...
如果您和來自不同國家/地區的使用者共用 Excel 檔案和報表,那麼您可能會想要在給他們的報表中使用他們的語言。 Excel MVP Mynda Treacy 在這篇以 不同語言顯示的 Excel 日期 一文中提供了很好的解決方案。 其中也包括您可以下載的活頁簿範例。