上次給大家分享了《2017年最全的excel函數(shù)大全8—文本函數(shù)(中)》,這次分享給大家文本函數(shù)(下)。
MID、MIDB 函數(shù)
描述
MID 返回文本字符串中從指定位置開始的特定數(shù)目的字符,該數(shù)目由用戶指定。
MIDB 根據(jù)您指定的字節(jié)數(shù),返回文本字符串中從指定位置開始的特定數(shù)目的字符。
重要:?
這些函數(shù)可能并不適用于所有語言。
MID 適用于使用單字節(jié)字符集 ? ? ?(SBCS) 的語言,而 MIDB 適用于使用雙字節(jié)字符集 ? ? ?(DBCS) 的語言。 ? ? ?您的計算機(jī)上的默認(rèn)語言設(shè)置對返回值的影響方式如下:
無論默認(rèn)語言設(shè)置如何,函數(shù) MID 始終將每個字符(不管是單字節(jié)還是雙字節(jié))按 1 計數(shù)。
當(dāng)啟用支持 DBCS 的語言的編輯并將其設(shè)置為默認(rèn)語言時,函數(shù) MIDB 會將每個雙字節(jié)字符按 2 計數(shù)。 ? ? ?否則,MIDB 會將每個字符按 1 計數(shù)。
支持 DBCS 的語言包括日語、中文(簡體)、中文(繁體)以及朝鮮語。
用法
MID(text, start_num, num_chars)
MIDB(text, start_num, num_bytes)
MID 和 MIDB 函數(shù)用法具有下列參數(shù):
文本????必需。 包含要提取字符的文本字符串。
start_num????必需。 ? ? ?文本中要提取的第一個字符的位置。 ? ? ?文本中第一個字符的 start_num 為 1,以此類推。
num_chars????必需。 ? ? ?指定希望 MID 從文本中返回字符的個數(shù)。
Num_bytes????必需。 ? ? ?指定希望 MIDB 從文本中返回字符的個數(shù)(字節(jié)數(shù))。
備注
如果 start_num 大于文本長度,則 MID 返回空文本 ("")。
如果 start_num 小于文本長度,但 ? ? ?start_num 加上 num_chars 超過了文本的長度,則 MID 只返回至多直到文本末尾的字符。
如果 start_num 小于 1,則 MID 返回 錯誤值 #VALUE!。
如果 num_chars 為負(fù)數(shù),則 MID 返回 錯誤值 #VALUE!。
如果 num_bytes 為負(fù)數(shù),則 MIDB 返回 錯誤值 #VALUE!。
案例
NUMBERVALUE 函數(shù)
描述
以與區(qū)域設(shè)置無關(guān)的方式將文本轉(zhuǎn)換為數(shù)字。
用法
NUMBERVALUE(Text, [Decimal_separator], [Group_separator ])
NUMBERVALUE 函數(shù)用法具有下列參數(shù)。
文本??? 必需。 要轉(zhuǎn)換為數(shù)字的文本。
Decimal_separator??? ? ? ?可選。 ? ? ?用于分隔結(jié)果的整數(shù)和小數(shù)部分的字符。
Group_separator??? 可選。 ? ? ?用于分隔數(shù)字分組的字符,例如,千位與百位之間以及百萬位與千位之間。
備注
如果未指定 Decimal_separator 和 ? ? ?Group_separator 參數(shù),則使用當(dāng)前區(qū)域設(shè)置中的分隔符。
如果 Decimal_separator 或 ? ? ?Group_separator 參數(shù)中使用了多個字符,則只會使用第一個字符。
如果空字符串 ("") 被指定為文本參數(shù),則結(jié)果為 0。
文本參數(shù)中的空格(即使位于參數(shù)中間)也將被忽略。 ? ? ?例如,“ 3 000 ”將返回 3000。
如果文本參數(shù)中多次使用小數(shù)分隔符,則 NUMBERVALUE 返回錯誤值 #VALUE! 。
如果在文本參數(shù)中數(shù)組分隔符出現(xiàn)在小數(shù)分隔符之前,則將忽略數(shù)組分隔符。
如果在文本參數(shù)中數(shù)組分隔符出現(xiàn)在小數(shù)分隔符之后,則 NUMBERVALUE 返回錯誤值 #VALUE! 。
如果有任何參數(shù)無效,則 NUMBERVALUE 返回錯誤值 #VALUE! 。
如果文本參數(shù)以一個或多個百分號 (%) 結(jié)束,這些百分號將用于結(jié)果計算。 如果文本參數(shù)中使用了多個百分號,則如同百分號用于公式中一樣,這些百分號將累加。 ? ? ?例如,=NUMBERVALUE("9%%") 與公式 =9%% 返回的結(jié)果相同,都是 ? ? ?0.0009。
案例
PHONETIC 函數(shù)
描述
提取文本字符串中的拼音 (furigana) 字符。該函數(shù)只適用于日文版。
用法
PHONETIC(reference)
PHONETIC 函數(shù)用法具有下列參數(shù):
引用????必需。文本字符串或?qū)蝹€單元格或包含 furigana 文本字符串的單元格區(qū)域的引用。
備注
如果 reference 為單元格區(qū)域,則返回區(qū)域左上角單元格中的 furigana 文本字符串。
如果 reference 為不相鄰單元格的區(qū)域,將返回錯誤值 #N/A。
案例
如果單元格 C4 中包含“??”,而單元格 B7 中包含“?”,則有:
=PHONETIC(C4)?等于“?”
=PHONETIC(B7)?等于“?”
PROPER 函數(shù)
描述
將文本字符串的首字母以及文字中任何非字母字符之后的任何其他字母轉(zhuǎn)換成大寫。 將其余字母轉(zhuǎn)換為小寫。
用法
PROPER(text)
PROPER 函數(shù)用法具有下列參數(shù):
文本????必需。 用引號括起來的文本、返回文本值的公式,或者對包含要進(jìn)行部分大寫轉(zhuǎn)換文本的單元格的引用。
案例
REPLACE、REPLACEB 函數(shù)
描述
根據(jù)指定的字符數(shù),REPLACE 將部分文本字符串替換為不同的文本字符串。
REPLACEB 使用其他文本字符串并根據(jù)所指定的字節(jié)數(shù)替換某文本字符串中的部分文本。
重要:?
這些函數(shù)可能并不適用于所有語言。
REPLACE 適用于使用單字節(jié)字符集 ? ? ?(SBCS) 的語言,而 REPLACEB 適用于使用雙字節(jié)字符集 ? ? ?(DBCS) 的語言。 ? ? ?您的計算機(jī)上的默認(rèn)語言設(shè)置對返回值的影響方式如下:
無論默認(rèn)語言設(shè)置如何,函數(shù) REPLACE 始終將每個字符(不管是單字節(jié)還是雙字節(jié))按 1 計數(shù)。
當(dāng)啟用支持 DBCS 的語言的編輯并將其設(shè)置為默認(rèn)語言時,函數(shù) REPLACEB 會將每個雙字節(jié)字符按 2 計數(shù)。 ? ? ?否則,REPLACEB 會將每個字符按 1 計數(shù)。
支持 DBCS 的語言包括日語、中文(簡體)、中文(繁體)以及朝鮮語。
用法
REPLACE(old_text, start_num, num_chars, new_text)
REPLACEB(old_text, start_num, num_bytes, new_text)
REPLACE 和 REPLACEB 函數(shù)用法具有下列參數(shù):
old_text????必需。 ? ? ?要替換其部分字符的文本。
start_num????必需。 old_text 中要替換為 new_text 的字符位置。
num_chars????必需。 old_text 中希望 REPLACE 使用 new_text 來進(jìn)行替換的字符數(shù)。
Num_bytes????必需。old_text 中希望 REPLACEB 使用 new_text 來進(jìn)行替換的字節(jié)數(shù)。
new_text????必需。 ? ? ?將替換 old_text 中字符的文本。
案例?
REPT 函數(shù)
描述
將文本重復(fù)一定次數(shù)。 使用 REPT 來在單元格中填充文本字符串的大量實(shí)例。
用法
REPT(text, number_times)
REPT 函數(shù)用法具有下列參數(shù):
Text????必需。 ? ? ?需要重復(fù)顯示的文本。
Number_times????必需。 ? ? ?用于指定文本重復(fù)次數(shù)的正數(shù)。
備注
如果 number_times 為 0(零),則 REPT 返回 ""(空文本)。
如果 number_times 不是整數(shù),將被截尾取整。
REPT 函數(shù)結(jié)果的長度不能超過 ? ? ?32,767 個字符,否則 REPT 返回 #VALUE!。
案例
RIGHT、RIGHTB 函數(shù)
描述
RIGHT 根據(jù)所指定的字符數(shù)返回文本字符串中最后一個或多個字符。
RIGHTB 根據(jù)所指定的字節(jié)數(shù)返回文本字符串中最后一個或多個字符。
重要:?RIGHT 適用于使用單字節(jié)字符集 (SBCS) 的語言,而 RIGHTB 適用于使用雙字節(jié)字符集 (DBCS) 的語言。 您的計算機(jī)上的默認(rèn)語言設(shè)置對返回值的影響方式如下:
無論默認(rèn)語言設(shè)置如何,函數(shù) RIGHT 始終將每個字符(不管是單字節(jié)還是雙字節(jié))按 1 計數(shù)。
當(dāng)啟用支持 DBCS 的語言的編輯并將其設(shè)置為默認(rèn)語言時,函數(shù) RIGHTB 會將每個雙字節(jié)字符按 2 計數(shù)。 ? ? ?否則,RIGHTB 會將每個字符按 1 計數(shù)。
支持 DBCS 的語言包括日語、中文(簡體)、中文(繁體)以及朝鮮語。
用法
RIGHT(text,[num_chars])
RIGHTB(text,[num_bytes])
RIGHT 和 RIGHTB 函數(shù)具有下列參數(shù):
文本????必需。 包含要提取字符的文本字符串。
num_chars????可選。 ? ? ?指定希望 RIGHT 提取的字符數(shù)。
Num_bytes????可選。 ? ? ?按字節(jié)指定要由 RIGHTB 提取的字符的數(shù)量。
備注
Num_chars 必須大于或等于零。
如果 num_chars 大于文本長度,則 RIGHT 返回所有文本。
如果省略 num_chars,則假定其值為 1。
案例
SEARCH、SEARCHB 函數(shù)
描述
SEARCH?和?SEARCHB?函數(shù)可在第二個文本字符串中查找第一個文本字符串,并返回第一個文本字符串的起始位置的編號,該編號從第二個文本字符串的第一個字符算起。例如,若要查找字母“n”在單詞“printer”中的位置,可以使用以下函數(shù):
=SEARCH("n","printer")
此函數(shù)會返回?4,因?yàn)椤皀”是單詞“printer”的第四個字符。
也可以在一個單詞中搜索另一個單詞。例如,以下函數(shù):
=SEARCH("base","database")
會返回?5,因?yàn)閱卧~“base”是從單詞“database”的第五個字符開始的。使用?SEARCH?和?SEARCHB?函數(shù)可以確定某個字符或文本字符串在另一個文本字符串中的位置,然后可使用?MID?和?MIDB?函數(shù)返回文本,或使用REPLACE?和?REPLACEB?函數(shù)更改文本。本文中的案例 1?中演示了這些函數(shù)。
重要:?
這些函數(shù)可能并不適用于所有語言。
只有在將 DBCS 語言設(shè)置為默認(rèn)語言時,函數(shù) ? ? ?SEARCHB 才會將每個字符按 2 個字節(jié)計數(shù)。否則,函數(shù) ? ? ?SEARCHB 的行為與 SEARCH 相同,即將每個字符按 1 個字節(jié)計數(shù)。
支持 DBCS 的語言包括日語、中文(簡體)、中文(繁體)以及朝鮮語。
用法
SEARCH(find_text,within_text,[start_num])
SEARCHB(find_text,within_text,[start_num])
SEARCH 和 SEARCHB 函數(shù)具有下列參數(shù):
find_text????必需。要查找的文本。
within_text????必需。要在其中搜索?find_text?參數(shù)的值的文本。
start_num????可選。within_text?參數(shù)中從之開始搜索的字符編號。
備注
SEARCH?和?SEARCHB?函數(shù)不區(qū)分大小寫。如果要執(zhí)行區(qū)分大小寫的搜索,可以使用?FIND?和?FINDB?函數(shù)。
可以在?find_text?參數(shù)中使用通配符?(問號 (?) 和星號 (*))?。問號匹配任意單個字符;星號匹配任意一串字符。如果要查找實(shí)際的問號或星號,請?jiān)谧址版I入波形符 (~)。
如果找不到?find_text?的值,則返回 ? ? ?錯誤值 #VALUE!。
如果省略了?start_num?參數(shù),則假設(shè)其值為 1。
如果?start_num?不大于 0(零)或大于?within_text?參數(shù)的長度,則返回 ? ? ?錯誤值 #VALUE!。
可以使用?start_num?來跳過指定數(shù)目的字符。以?SEARCH?函數(shù)為例,假設(shè)要處理文本字符串“AYF0093.YoungMensApparel”。若要在文本字符串的描述部分中查找第一個“Y”的位置,請將?start_num設(shè)置為 8,這樣就不會搜索文本的序列號部分(即本例中的“AYF0093”)。SEARCH?函數(shù)從第 8 個字符開始,在下一個字符處查找在?find_text?參數(shù)中指定的字符,并返回數(shù)字 9。SEARCH?函數(shù)總是返回從within_text?參數(shù)的起始位置計算的字符的編號,如果?start_num?參數(shù)大于 1,則會計算跳過的字符。
案例
SUBSTITUTE 函數(shù)
描述
在文本字符串中用 new_text 替換 old_text。 如果需要在某一文本字符串中替換指定的文本,請使用函數(shù) SUBSTITUTE;如果需要在某一文本字符串中替換特定位置處的任意文本,請使用函數(shù) REPLACE。
用法
SUBSTITUTE(text, old_text, new_text, [instance_num])
SUBSTITUTE 函數(shù)用法具有下列參數(shù):
文本????必需。 需要替換其中字符的文本,或?qū)形谋荆ㄐ枰鎿Q其中字符)的單元格的引用。
old_text????必需。 ? ? ?需要替換的文本。
new_text????必需。 ? ? ?用于替換 old_text 的文本。
Instance_num????可選。 ? ? ?指定要用 new_text 替換 old_text 的事件。 ? ? ?如果指定了 instance_num,則只有滿足要求的 ? ? ?old_text 被替換。 ? ? ?否則,文本中出現(xiàn)的所有 old_text 都會更改為 new_text。
案例
T 函數(shù)
描述
返回值引用的文字。
用法
T(value)
T 函數(shù)用法具有下列參數(shù):
值????必需。 要測試的值。
備注
如果值是文字或引用文字,則 T 返回值。 如果值未引用文字,則 T 返回 ""(空文字)。
由于 Microsoft Excel 會根據(jù)需要自動轉(zhuǎn)換值,因此通常無需在公式中使用 T 函數(shù)。 提供此函數(shù)是為了與其他電子表格程序兼容。
案例
TEXT 函數(shù)
描述
TEXT?函數(shù)可通過格式代碼向數(shù)字應(yīng)用格式,進(jìn)而更改數(shù)字的顯示方式。如果要按更可讀的格式顯示數(shù)字,或者將數(shù)字與文本或符號組合,它將非常有用。
注意:?TEXT 函數(shù)會將數(shù)字轉(zhuǎn)換為文本,這可能使其在以后的計算中難以引用。最好將原始值保存在一個單元格中,然后在另一單元格中使用 TEXT 函數(shù)。隨后如果需要構(gòu)建其他公式,請始終引用原始值,而不是 TEXT 函數(shù)結(jié)果。
TEXT 函數(shù)最簡單的形式表示:
=TEXT(Value you want to format, "Format code you want to ? ? ?apply")
下面是一些常用案例,可將其直接復(fù)制到 Excel 自行進(jìn)行試驗(yàn)。請注意引號內(nèi)的格式代碼。
注意:?雖然可使用 TEXT 函數(shù)更改格式,但這不是唯一的方法。不使用公式也可更改格式,方法是:按?CTRL+1(或在 Mac 上按?+1),然后從“格式單元格”>“數(shù)字”對話框中選擇所需格式。
常見方案
TEXT?函數(shù)很少單獨(dú)使用,通常與其他內(nèi)容配合使用。假設(shè)你想合并文本和數(shù)值,如“報告打印日期:12/03/14”或“每周收入: $66,348.72”。你可將此內(nèi)容手動鍵入 Excel,但這違背了讓 Excel 執(zhí)行此操作的目的。遺憾的是,在合并文本和帶格式的數(shù)字(如日期、時間、貨幣等)時,Excel 不知道你所希望的顯示方式,因此會省去數(shù)字格式。這便是?TEXT?函數(shù)的價值所在,因?yàn)樗苁褂谩?strong>格式代碼”(如日期格式“YY/MM/DD”)強(qiáng)制 Excel 按照你所希望的方式設(shè)置值的格式。
以下案例將顯示不使用?TEXT?函數(shù)合并文本和數(shù)字的結(jié)果。本例中,我們使用與號?(&) 連接一個文本字符串、一個空格 (" ") 和一個帶?=A2&" "&B2?的值。
正如你看到的,Excel 刪除了 B2 單元格中的日期格式。下一案例將展示 TEXT 函數(shù)如何使你應(yīng)用所需的格式。
更新的公式為:
Cell C2:=A2&" ? ? ?"&TEXT(B2,"mm/dd/yy")?- Date format
TEXTJOIN 函數(shù)
描述
TEXTJOIN 函數(shù)將多個區(qū)域和/或字符串的文本組合起來,并包括你在要組合的各文本值之間指定的分隔符。如果分隔符是空的文本字符串,則此函數(shù)將有效連接這些區(qū)域。
用法
TEXTJOIN(分隔符, ignore_empty, text1, [text2], …)
例如,=TEXTJOIN (" ",TRUE, "", "太陽", "將", "升", "起"、"明天") 將返回明天將升起太陽。
備注
如果結(jié)果字符串超過 32767 個字符(單元格限制),則 ? ? ?TEXTJOIN 返回 #VALUE! 錯誤。
案例
案例 1
案例 2
案例 3?
TRIM 函數(shù)
描述
除了單詞之間的單個空格之外,移除文本中的所有空格。 對于從另一個可能含有不規(guī)則間距的應(yīng)用程序收到的文本,可以使用 TRIM。
重要:?TRIM 函數(shù)專用于剪裁文本中的 7 位 ASCII 空格字符(值 32)。在 Unicode 字符集中,存在名為不間斷空格字符的附加空格字符,其十進(jìn)制值為 160。通常在網(wǎng)頁中使用此字符作為 HTML 實(shí)體? 。TRIM 函數(shù)本身不會刪除此不間斷空格字符。
用法
TRIM(text)
TRIM 函數(shù)用法具有下列參數(shù):
Text????必需。 ? ? ?要從中移除空格的文本。
案例
UNICHAR 函數(shù)
描述
返回給定數(shù)值引用的 Unicode 字符。
用法
UNICHAR(number)
UNICHAR 函數(shù)用法具有下列參數(shù)。
Number??? 必需。 Number 為代表字符的 Unicode 數(shù)字。
備注
返回的 Unicode 字符可以是一個字符串,比如以 ? ? ?UTF-8 或 UTF-16 編碼的字符串。
如果 Unicode 數(shù)字為部分代理項(xiàng)且數(shù)據(jù)類型無效,則 UNICHAR 返回錯誤值 #N/A。
如果數(shù)字的數(shù)值超出允許范圍,則 UNICHAR 返回錯誤值 #VALUE! 。
如果數(shù)字為零 (0),則 UNICHAR 返回錯誤值 #VALUE! 。
案例
UNICODE 函數(shù)
描述
返回對應(yīng)于文本的第一個字符的數(shù)字(代碼點(diǎn))。
用法
Unicode 文本
UNICODE 函數(shù)用法具有下列參數(shù)。
Text??? 必需。 Text 是要獲得其 Unicode 值的字符。
備注
如果文本包含部分代理項(xiàng)或數(shù)據(jù)類型無效,則 UNICODE 返回錯誤值 #VALUE! 。
案例
UPPER 函數(shù)
描述
將文本轉(zhuǎn)換為大寫字母。
用法
UPPER(text)
UPPER 函數(shù)用法具有下列參數(shù):
Text????必需。 ? ? ?要轉(zhuǎn)換為大寫字母的文本。 ? ? ?文本可以是引用或文本字符串。
案例
VALUE 函數(shù)
描述
將表示數(shù)字的文本字符串轉(zhuǎn)換為數(shù)字。
用法
VALUE(text)
VALUE 函數(shù)用法具有下列參數(shù):
文本????必需。 用引號括起來的文本或包含要轉(zhuǎn)換文本的單元格的引用。
備注
文本可以是 Microsoft Excel 可識別的常數(shù)、日期或時間格式中的任何一種格式。 如果文本不是這些格式中的一種格式,則 VALUE 返回錯誤值 #VALUE!。
由于 Excel 會根據(jù)需要自動將文本轉(zhuǎn)換為數(shù)字,因此通常無需在公式中使用 VALUE 函數(shù)。 提供此函數(shù)是為了與其他電子表格程序兼容。
案例
以上是所有EXCEL的文本函數(shù)(下)描述用法以及使用案例。這次分享中存在哪些疑問或者哪些不足,可以在下面進(jìn)行評論。如果覺得不錯,可以分享給你的朋友,讓大家一起掌握這些excel的文本函數(shù)(下)。