255,)-1)补充:这是EXCEL里的公式," /> 255,)-1)补充:这是EXCEL里的公式, - 作业答案大全" />

这是一条提取中文跟其他字符混合的字符串里开头非中文字符的公式,(如字符串为“abcd1234中国人”,用公式提取后结果显示“abcd1234”),有谁来解释下公式的意思,能解释得很清楚的再追加分数:=LEFT(A1,MATCH(TRUE,CODE(MID(A1,ROW(INDIRECT("1:"&LEN(A1))),1))>255,)-1)补充:这是EXCEL里的公式,

问题描述:

这是一条提取中文跟其他字符混合的字符串里开头非中文字符的公式,(如字符串为“abcd1234中国人”,用公式提取后结果显示“abcd1234”),有谁来解释下公式的意思,能解释得很清楚的再追加分数:
=LEFT(A1,MATCH(TRUE,CODE(MID(A1,ROW(INDIRECT("1:"&LEN(A1))),1))>255,)-1)
补充:这是EXCEL里的公式,

公式首先用LEN函数来确定单元格的字符数,然后用ROW结合INDIRECT函数返回一个数组{1,2,3,N},N即为LEN返回的单元格的字符数,再用MID函数提取出字符串中的每一个字符,用CODE返回每个字符的数字代码并与255比较大小,中文字符就会大于255,比较结果就会返回TRUE,第一个出现的TRUE的位置就是字符串中中文字符出现的位置,将这个位置的数值减去1就是非中文字符的个数,最后用LEFT函数提取出所有非中文字符.
其实这个公式可以用下面的公式代替,
=LEFT(A1,LEN(A1)*2-LENB(A1))