在日常的工作中,查找特定字符在一個字符串中的位置是非常常見的操作,但是如果熟悉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知識》