2017年最全的excel函数大全8—文本函数(下)

字数 4874阅读 363

上次给大家分享了《2017年最全的excel函数大全8—文本函数(中)》,这次分享给大家文本函数(下)。

MID、MIDB 函数

描述

MID 返回文本字符串中从指定位置开始的特定数目的字符,该数目由用户指定。

MIDB 根据您指定的字节数,返回文本字符串中从指定位置开始的特定数目的字符。

重要: 

  • 这些函数可能并不适用于所有语言。

  • MID 适用于使用单字节字符集      (SBCS) 的语言,而 MIDB 适用于使用双字节字符集      (DBCS) 的语言。      您的计算机上的默认语言设置对返回值的影响方式如下:

  • 无论默认语言设置如何,函数 MID 始终将每个字符(不管是单字节还是双字节)按 1 计数。

  • 当启用支持 DBCS 的语言的编辑并将其设置为默认语言时,函数 MIDB 会将每个双字节字符按 2 计数。      否则,MIDB 会将每个字符按 1 计数。

  • 支持 DBCS 的语言包括日语、中文(简体)、中文(繁体)以及朝鲜语。

    用法

    MID(text, start_num, num_chars)

    MIDB(text, start_num, num_bytes)

    MID 和 MIDB 函数用法具有下列参数:

  • 文本    必需。 包含要提取字符的文本字符串。

  • start_num    必需。      文本中要提取的第一个字符的位置。      文本中第一个字符的 start_num 为 1,以此类推。

  • num_chars    必需。      指定希望 MID 从文本中返回字符的个数。

  • Num_bytes    必需。      指定希望 MIDB 从文本中返回字符的个数(字节数)。

  • 备注

  • 如果 start_num 大于文本长度,则 MID 返回空文本 ("")。

  • 如果 start_num 小于文本长度,但      start_num 加上 num_chars 超过了文本的长度,则 MID 只返回至多直到文本末尾的字符。

  • 如果 start_num 小于 1,则 MID 返回 错误值 #VALUE!。

  • 如果 num_chars 为负数,则 MID 返回 错误值 #VALUE!。

  • 如果 num_bytes 为负数,则 MIDB 返回 错误值 #VALUE!。

  • 案例

    NUMBERVALUE 函数

    描述

    以与区域设置无关的方式将文本转换为数字。

    用法

    NUMBERVALUE(Text, [Decimal_separator], [Group_separator ])

    NUMBERVALUE 函数用法具有下列参数。

  • 文本    必需。 要转换为数字的文本。

  • Decimal_separator         可选。      用于分隔结果的整数和小数部分的字符。

  • Group_separator    可选。      用于分隔数字分组的字符,例如,千位与百位之间以及百万位与千位之间。

  • 备注

  • 如果未指定 Decimal_separator 和      Group_separator 参数,则使用当前区域设置中的分隔符。

  • 如果 Decimal_separator 或      Group_separator 参数中使用了多个字符,则只会使用第一个字符。

  • 如果空字符串 ("") 被指定为文本参数,则结果为 0。

  • 文本参数中的空格(即使位于参数中间)也将被忽略。      例如,“ 3 000 ”将返回 3000。

  • 如果文本参数中多次使用小数分隔符,则 NUMBERVALUE 返回错误值 #VALUE! 。

  • 如果在文本参数中数组分隔符出现在小数分隔符之前,则将忽略数组分隔符。

  • 如果在文本参数中数组分隔符出现在小数分隔符之后,则 NUMBERVALUE 返回错误值 #VALUE! 。

  • 如果有任何参数无效,则 NUMBERVALUE 返回错误值 #VALUE! 。

  • 如果文本参数以一个或多个百分号 (%) 结束,这些百分号将用于结果计算。 如果文本参数中使用了多个百分号,则如同百分号用于公式中一样,这些百分号将累加。      例如,=NUMBERVALUE("9%%") 与公式 =9%% 返回的结果相同,都是      0.0009。

  • 案例

    PHONETIC 函数

    描述

    提取文本字符串中的拼音 (furigana) 字符。该函数只适用于日文版。

    用法

    PHONETIC(reference)

    PHONETIC 函数用法具有下列参数:

  • 引用    必需。文本字符串或对单个单元格或包含 furigana 文本字符串的单元格区域的引用。

  • 备注

  • 如果 reference 为单元格区域,则返回区域左上角单元格中的 furigana 文本字符串。

  • 如果 reference 为不相邻单元格的区域,将返回错误值 #N/A。

  • 案例

    如果单元格 C4 中包含“  ”,而单元格 B7 中包含“ ”,则有:

    =PHONETIC(C4) 等于“ ”

    =PHONETIC(B7) 等于“ ”

    PROPER 函数

    描述

    将文本字符串的首字母以及文字中任何非字母字符之后的任何其他字母转换成大写。 将其余字母转换为小写。

    用法

    PROPER(text)

    PROPER 函数用法具有下列参数:

  • 文本    必需。 用引号括起来的文本、返回文本值的公式,或者对包含要进行部分大写转换文本的单元格的引用。

  • 案例

    REPLACE、REPLACEB 函数

    描述

    根据指定的字符数,REPLACE 将部分文本字符串替换为不同的文本字符串。

    REPLACEB 使用其他文本字符串并根据所指定的字节数替换某文本字符串中的部分文本。

    重要: 

  • 这些函数可能并不适用于所有语言。

  • REPLACE 适用于使用单字节字符集      (SBCS) 的语言,而 REPLACEB 适用于使用双字节字符集      (DBCS) 的语言。      您的计算机上的默认语言设置对返回值的影响方式如下:

  • 无论默认语言设置如何,函数 REPLACE 始终将每个字符(不管是单字节还是双字节)按 1 计数。

  • 当启用支持 DBCS 的语言的编辑并将其设置为默认语言时,函数 REPLACEB 会将每个双字节字符按 2 计数。      否则,REPLACEB 会将每个字符按 1 计数。

  • 支持 DBCS 的语言包括日语、中文(简体)、中文(繁体)以及朝鲜语。

    用法

    REPLACE(old_text, start_num, num_chars, new_text)

    REPLACEB(old_text, start_num, num_bytes, new_text)

    REPLACE 和 REPLACEB 函数用法具有下列参数:

  • old_text    必需。      要替换其部分字符的文本。

  • start_num    必需。 old_text 中要替换为 new_text 的字符位置。

  • num_chars    必需。 old_text 中希望 REPLACE 使用 new_text 来进行替换的字符数。

  • Num_bytes    必需。old_text 中希望 REPLACEB 使用 new_text 来进行替换的字节数。

  • new_text    必需。      将替换 old_text 中字符的文本。

  • 案例 

    REPT 函数

    描述

    将文本重复一定次数。 使用 REPT 来在单元格中填充文本字符串的大量实例。

    用法

    REPT(text, number_times)

    REPT 函数用法具有下列参数:

  • Text    必需。      需要重复显示的文本。

  • Number_times    必需。      用于指定文本重复次数的正数。

  • 备注

  • 如果 number_times 为 0(零),则 REPT 返回 ""(空文本)。

  • 如果 number_times 不是整数,将被截尾取整。

  • REPT 函数结果的长度不能超过      32,767 个字符,否则 REPT 返回 #VALUE!。

  • 案例

    RIGHT、RIGHTB 函数

    描述

    RIGHT 根据所指定的字符数返回文本字符串中最后一个或多个字符。

    RIGHTB 根据所指定的字节数返回文本字符串中最后一个或多个字符。

    重要: RIGHT 适用于使用单字节字符集 (SBCS) 的语言,而 RIGHTB 适用于使用双字节字符集 (DBCS) 的语言。 您的计算机上的默认语言设置对返回值的影响方式如下:

  • 无论默认语言设置如何,函数 RIGHT 始终将每个字符(不管是单字节还是双字节)按 1 计数。

  • 当启用支持 DBCS 的语言的编辑并将其设置为默认语言时,函数 RIGHTB 会将每个双字节字符按 2 计数。      否则,RIGHTB 会将每个字符按 1 计数。

  • 支持 DBCS 的语言包括日语、中文(简体)、中文(繁体)以及朝鲜语。

    用法

    RIGHT(text,[num_chars])

    RIGHTB(text,[num_bytes])

    RIGHT 和 RIGHTB 函数具有下列参数:

  • 文本    必需。 包含要提取字符的文本字符串。

  • num_chars    可选。      指定希望 RIGHT 提取的字符数。

  • Num_bytes    可选。      按字节指定要由 RIGHTB 提取的字符的数量。

  • 备注

  • Num_chars 必须大于或等于零。

  • 如果 num_chars 大于文本长度,则 RIGHT 返回所有文本。

  • 如果省略 num_chars,则假定其值为 1。

  • 案例

    SEARCH、SEARCHB 函数

    描述

    SEARCH 和 SEARCHB 函数可在第二个文本字符串中查找第一个文本字符串,并返回第一个文本字符串的起始位置的编号,该编号从第二个文本字符串的第一个字符算起。例如,若要查找字母“n”在单词“printer”中的位置,可以使用以下函数:

    =SEARCH("n","printer")

    此函数会返回 4,因为“n”是单词“printer”的第四个字符。

    也可以在一个单词中搜索另一个单词。例如,以下函数:

    =SEARCH("base","database")

    会返回 5,因为单词“base”是从单词“database”的第五个字符开始的。使用 SEARCH 和 SEARCHB 函数可以确定某个字符或文本字符串在另一个文本字符串中的位置,然后可使用 MID 和 MIDB 函数返回文本,或使用REPLACE 和 REPLACEB 函数更改文本。本文中的案例 1 中演示了这些函数。

    重要: 

  • 这些函数可能并不适用于所有语言。

  • 只有在将 DBCS 语言设置为默认语言时,函数      SEARCHB 才会将每个字符按 2 个字节计数。否则,函数      SEARCHB 的行为与 SEARCH 相同,即将每个字符按 1 个字节计数。

  • 支持 DBCS 的语言包括日语、中文(简体)、中文(繁体)以及朝鲜语。

    用法

    SEARCH(find_text,within_text,[start_num])

    SEARCHB(find_text,within_text,[start_num])

    SEARCH 和 SEARCHB 函数具有下列参数:

  • find_text    必需。要查找的文本。

  • within_text    必需。要在其中搜索 find_text 参数的值的文本。

  • start_num    可选。within_text 参数中从之开始搜索的字符编号。

  • 备注

  • SEARCH 和 SEARCHB 函数不区分大小写。如果要执行区分大小写的搜索,可以使用 FIND 和 FINDB 函数。

  • 可以在 find_text 参数中使用通配符 (问号 (?) 和星号 (*)) 。问号匹配任意单个字符;星号匹配任意一串字符。如果要查找实际的问号或星号,请在字符前键入波形符 (~)。

  • 如果找不到 find_text 的值,则返回      错误值 #VALUE!。

  • 如果省略了 start_num 参数,则假设其值为 1。

  • 如果 start_num 不大于 0(零)或大于 within_text 参数的长度,则返回      错误值 #VALUE!。

  • 可以使用 start_num 来跳过指定数目的字符。以 SEARCH 函数为例,假设要处理文本字符串“AYF0093.YoungMensApparel”。若要在文本字符串的描述部分中查找第一个“Y”的位置,请将 start_num设置为 8,这样就不会搜索文本的序列号部分(即本例中的“AYF0093”)。SEARCH 函数从第 8 个字符开始,在下一个字符处查找在 find_text 参数中指定的字符,并返回数字 9。SEARCH 函数总是返回从within_text 参数的起始位置计算的字符的编号,如果 start_num 参数大于 1,则会计算跳过的字符。

  • 案例

    SUBSTITUTE 函数

    描述

    在文本字符串中用 new_text 替换 old_text。 如果需要在某一文本字符串中替换指定的文本,请使用函数 SUBSTITUTE;如果需要在某一文本字符串中替换特定位置处的任意文本,请使用函数 REPLACE。

    用法

    SUBSTITUTE(text, old_text, new_text, [instance_num])

    SUBSTITUTE 函数用法具有下列参数:

  • 文本    必需。 需要替换其中字符的文本,或对含有文本(需要替换其中字符)的单元格的引用。

  • old_text    必需。      需要替换的文本。

  • new_text    必需。      用于替换 old_text 的文本。

  • Instance_num    可选。      指定要用 new_text 替换 old_text 的事件。      如果指定了 instance_num,则只有满足要求的      old_text 被替换。      否则,文本中出现的所有 old_text 都会更改为 new_text。

  • 案例

    T 函数

    描述

    返回值引用的文字。

    用法

    T(value)

    T 函数用法具有下列参数:

  •     必需。 要测试的值。

  • 备注

  • 如果值是文字或引用文字,则 T 返回值。 如果值未引用文字,则 T 返回 ""(空文字)。

  • 由于 Microsoft Excel 会根据需要自动转换值,因此通常无需在公式中使用 T 函数。 提供此函数是为了与其他电子表格程序兼容。

  • 案例

    TEXT 函数

    描述

    TEXT 函数可通过格式代码向数字应用格式,进而更改数字的显示方式。如果要按更可读的格式显示数字,或者将数字与文本或符号组合,它将非常有用。

    注意: TEXT 函数会将数字转换为文本,这可能使其在以后的计算中难以引用。最好将原始值保存在一个单元格中,然后在另一单元格中使用 TEXT 函数。随后如果需要构建其他公式,请始终引用原始值,而不是 TEXT 函数结果。

    TEXT 函数最简单的形式表示:

  • =TEXT(Value you want to format, "Format code you want to      apply")

  • 下面是一些常用案例,可将其直接复制到 Excel 自行进行试验。请注意引号内的格式代码。

    注意: 虽然可使用 TEXT 函数更改格式,但这不是唯一的方法。不使用公式也可更改格式,方法是:按 CTRL+1(或在 Mac 上按 +1),然后从“格式单元格”>“数字”对话框中选择所需格式。

    常见方案

    TEXT 函数很少单独使用,通常与其他内容配合使用。假设你想合并文本和数值,如“报告打印日期:12/03/14”或“每周收入: $66,348.72”。你可将此内容手动键入 Excel,但这违背了让 Excel 执行此操作的目的。遗憾的是,在合并文本和带格式的数字(如日期、时间、货币等)时,Excel 不知道你所希望的显示方式,因此会省去数字格式。这便是 TEXT 函数的价值所在,因为它能使用“格式代码”(如日期格式“YY/MM/DD”)强制 Excel 按照你所希望的方式设置值的格式。

    以下案例将显示不使用 TEXT 函数合并文本和数字的结果。本例中,我们使用与号 (&) 连接一个文本字符串、一个空格 (" ") 和一个带 =A2&" "&B2 的值。

    正如你看到的,Excel 删除了 B2 单元格中的日期格式。下一案例将展示 TEXT 函数如何使你应用所需的格式。

    更新的公式为:

  • Cell C2:=A2&"      "&TEXT(B2,"mm/dd/yy") - Date format

  • TEXTJOIN 函数

    描述

    TEXTJOIN 函数将多个区域和/或字符串的文本组合起来,并包括你在要组合的各文本值之间指定的分隔符。如果分隔符是空的文本字符串,则此函数将有效连接这些区域。

    用法

    TEXTJOIN(分隔符, ignore_empty, text1, [text2], …)

    例如,=TEXTJOIN (" ",TRUE, "", "太阳", "将", "升", "起"、"明天") 将返回明天将升起太阳。

    备注

  • 如果结果字符串超过 32767 个字符(单元格限制),则      TEXTJOIN 返回 #VALUE! 错误。

  • 案例

    案例 1

    案例 2

    案例 3 

    TRIM 函数

    描述

    除了单词之间的单个空格之外,移除文本中的所有空格。 对于从另一个可能含有不规则间距的应用程序收到的文本,可以使用 TRIM。

    重要: TRIM 函数专用于剪裁文本中的 7 位 ASCII 空格字符(值 32)。在 Unicode 字符集中,存在名为不间断空格字符的附加空格字符,其十进制值为 160。通常在网页中使用此字符作为 HTML 实体  。TRIM 函数本身不会删除此不间断空格字符。

    用法

    TRIM(text)

    TRIM 函数用法具有下列参数:

  • Text    必需。      要从中移除空格的文本。

  • 案例

    UNICHAR 函数

    描述

    返回给定数值引用的 Unicode 字符。

    用法

    UNICHAR(number)

    UNICHAR 函数用法具有下列参数。

  • Number    必需。 Number 为代表字符的 Unicode 数字。

  • 备注

  • 返回的 Unicode 字符可以是一个字符串,比如以      UTF-8 或 UTF-16 编码的字符串。

  • 如果 Unicode 数字为部分代理项且数据类型无效,则 UNICHAR 返回错误值 #N/A。

  • 如果数字的数值超出允许范围,则 UNICHAR 返回错误值 #VALUE! 。

  • 如果数字为零 (0),则 UNICHAR 返回错误值 #VALUE! 。

  • 案例

    UNICODE 函数

    描述

    返回对应于文本的第一个字符的数字(代码点)。

    用法

    Unicode 文本

    UNICODE 函数用法具有下列参数。

  • Text    必需。 Text 是要获得其 Unicode 值的字符。

  • 备注

  • 如果文本包含部分代理项或数据类型无效,则 UNICODE 返回错误值 #VALUE! 。

  • 案例

    UPPER 函数

    描述

    将文本转换为大写字母。

    用法

    UPPER(text)

    UPPER 函数用法具有下列参数:

  • Text    必需。      要转换为大写字母的文本。      文本可以是引用或文本字符串。

  • 案例

    VALUE 函数

    描述

    将表示数字的文本字符串转换为数字。

    用法

    VALUE(text)

    VALUE 函数用法具有下列参数:

  • 文本    必需。 用引号括起来的文本或包含要转换文本的单元格的引用。

  • 备注

  • 文本可以是 Microsoft Excel 可识别的常数、日期或时间格式中的任何一种格式。 如果文本不是这些格式中的一种格式,则 VALUE 返回错误值 #VALUE!。

  • 由于 Excel 会根据需要自动将文本转换为数字,因此通常无需在公式中使用 VALUE 函数。 提供此函数是为了与其他电子表格程序兼容。

  • 案例

    以上是所有EXCEL的文本函数(下)描述用法以及使用案例。这次分享中存在哪些疑问或者哪些不足,可以在下面进行评论。如果觉得不错,可以分享给你的朋友,让大家一起掌握这些excel的文本函数(下)。

    推荐阅读更多精彩内容