admin 管理员组

文章数量: 887031


2023年12月23日发(作者:手机firefox访问外网)

mid 字符中带字符 函数取的值不对

中带字符 函数取值不对

有时候在使用 Mid 函数时会遇到取值不对的问题,即字符中带有特殊字符,导致函数无法正确取到所需的值。以下是一些可能导致这种情况的原因以及解决方案:

问题一:特殊字符被误认为参数分隔符

Mid 函数的参数是由三个部分组成的:被操作字符串、开始位置、长度。如果被操作字符串中间包含了与参数分隔符相同的特殊字符(如逗号),那么函数会将其误认为是参数分隔符,导致无法正确取到所需的值。

解决方案:在特殊字符前加上双引号,将其转义

例如,如果要取“my, mid, 好用”这个字符串中的“mid”一词,可以使用以下函数:

=Mid("my, mid, 好用", 5, 3)

其中 5 表示开始位置,3 表示长度。由于中间包含了逗号,因此需要将其转义:

=Mid("my, ""mid"", 好用", 5, 3)

问题二:特殊字符被误认为字符串结束符

Mid 函数的第一个参数必须是字符串,如果被操作字符串中间包含了与字符串结束符相同的特殊字符(如双引号),那么函数会将其误认为字符串结束符,导致无法正确取到所需的值。

解决方案:在特殊字符前加上反斜杠,将其转义

例如,如果要取“my "mid" 好用”这个字符串中的“mid”一词,可以使用以下函数:

=Mid("my ""mid"" 好用", 5, 3)

其中 5 表示开始位置,3 表示长度。由于中间包含了双引号,因此需要将其转义:

=Mid("my "mid" 好用", 5, 3)

问题三:被操作字符串中包含了不可打印字符

有些字符无法被打印,比如 Tab、回车等特殊字符。如果被操作字符串中包含了这些字符,那么函数将无法正确取到所需的值。

解决方案:使用 ASC 函数将其转换成可打印字符

例如,如果要取“myMid好用”这个字符串中的“Mid”一词,但是这个字符串中的“Mid”前面有一个不可打印的 Tab 字符,可以使用以下函数:

=Mid("my" & Chr(9) & "Mid好用", 6, 3)

其中 Chr(9) 代表 Tab 字符,6 表示开始位置,3 表示长度。通过将不可打印字符转换成可打印字符,我们可以正常使用 Mid 函数了。

总结

Mid 函数是 Excel 中常用的字符串函数之一,但是在实际使用中,由于一些特殊字符的存在,我们可能会遇到取值不对的问题。在遇到这种情况时,可以通过转义或者转换字符的方式解决问题。在使用字符串函数之前,尽量先查看被操作字符串中是否包含了特殊字符,以免导致不必要的错误。


本文标签: 字符 特殊字符 函数 字符串