在日常的工作中,查找特定字符在一个字符串中的位置是非常常见的操作,但是如果熟悉excel的朋友应该都知道,在Excel中提供的字符查找函数FIND中,无法设置出现次数这个参数。今天,我们就给大家讲解一下,通过集合替换函数SUBSTITUTE快速的实现查找某个字符第N次出现的位置。请看下面的例子。 首先,我们先来对这两个函数做一个简单的介绍。 1.FIND函数语法:=FIND(find_text,within_text,start_num) 参数解释: find_text:要查找的字符串,如果该参数为空,则函数返回值为1。该参数中的字符串不能包含通配符。 within_text:包含要查找关键字的字符串或者单元格。如果 within_text 中没有 find_text,则 FIND返回错误值 #VALUE!。 start_num:指定开始进行查找的字符数。比如Start_num为1,则从字符串内第一个字符开始查找关键字。如果忽略 start_num,则假设其为 1。该参数的值必须是大于0且不大于within_text的长度(0<start_num<=len(within_text)),否则函数将返回错误值#VALUE!。 2. SUBSTITUTE函数语法:SUBSTITUTE(text,old_text,new_text,[instance_num]) 参数解释: text:需要替换其中字符的文本,或是含有文本的单元格引用; old_text:需要替换的旧文本; new_text:用于替换old_text 的文本; instance_num:该参数为数值,用来指定以new_text 替换第几次出现的old_text;如果指定了instance_num,则只有满足要求的old_text 被替换;如果缺省则将用 new_text 替换 TEXT 中出现的所有 old_text。 根据上面的介绍,我们可以看到,SUBSTITUTE提供了出现次数N的参数,这个就是我们希望用到的地方。上面的例子中的公式如下: D2公式为:=FIND('龢龢',SUBSTITUTE(A2,B2,'龢龢',C2)) D3公式为:=FIND('龢',SUBSTITUTE(A3,B3,'龢',C3)) 特别注意:用于替换的字符要和查找的字符的长度是一致的,替换成的字符需要设置一个原文本中没有出现的字,可以是任意字,为了简单,我们用很少会用到的字'龢'(读音hé)来替换。 结果如下: |
|
来自: 满泉ca85upjdlw > 《Excel知识》