EXCEL函式之:SEARCH() SEARCHB() --怎樣將文字和數字分列顯示

taogchan發表於2013-08-22

SEARCH(),   SEARCHB()

SEARCH 返回從 start_num 開始首次找到特定字元或文字字串的位置上特定字元的編號。使用 SEARCH 可確定字元或文字字串在其他文字字串中的位置,這樣就可使用 MID 或 REPLACE 函式更改文字。

SEARCHB 也可在其他文字字串 (within_text) 中查詢文字字串 (find_text),並返回 find_text 的起始位置編號。此結果是基於每個字元所使用的位元組數,並從 start_num 開始的。此函式用於雙位元組字元。此外,也可使用 FINDB 在其他文字字串中查詢文字字串。

語法

SEARCH(find_text,within_text,start_num)

SEARCHB(find_text,within_text,start_num)

Find_text   是要查詢的文字。可以在 find_text 中使用萬用字元,包括問號 (?) 和星號 (*)。問號可匹配任意的單個字元,星號可匹配任意一串字元。如果要查詢真正的問號或星號,請在該字元前鍵入波形符 (~)。

Within_text   是要在其中查詢 find_text 的文字。

Start_num   是 within_text 中開始查詢的字元的編號。

提示

使用 start_num 可跳過指定數目的字元。例如,假定使用文字字串 AYF0093.YoungMensApparel,如果要查詢文字字串中說明部分的第一個 Y 的編號,則可將 start_num 設定為 8,這樣就不會查詢文字的序列號部分。SEARCH 將從第 8 個字元開始查詢,而在下一個字元處即可找到 find_text,於是返回編號 9。SEARCH 總是從 within_text 的起始處返回字元編號,如果 start_num 大於 1,也會對跳過的字元進行計數。

說明

SEARCH 和 SEARCHB 在查詢文字時不區分大小寫。

SEARCH 和 SEARCHB 類似於 FIND 和 FINDB,但 FIND 和 FINDB 區分大小寫。

如果沒有找到 find_text,則返回錯誤值 #VALUE!。

如果忽略 start_num,則假定其為 1。

如果 start_num 不大於 0(零)或大於 within_text,則返回錯誤值 #VALUE!。

示例 (SEARCHB)

怎樣將文字和數字分列顯示

如 A1="中行41785015110010091252"

則 B1=LEFT(A1,(SEARCHB("?",A1,1)-1)/2)    --&gt"中行"

    C1=MID(A1,LEN(B1)+1,50)                --&gt"41785015110010091252"

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/22392018/viewspace-769033/,如需轉載,請註明出處,否則將追究法律責任。

相關文章