我們通過(guò)一個(gè)關(guān)鍵詞查詢(xún)案例來(lái)掌握一下文本處理函數(shù)和循環(huán)查詢(xún),算是對(duì)VBA入門(mén)的一個(gè)鞏固!
需求:找出所有含有"科技"的公司,字體紅色+加粗
邏輯處理:我們循環(huán)查詢(xún)每一個(gè)公司名稱(chēng),因?yàn)橐獦?biāo)記,所以我們需要找到開(kāi)始的位置+2 文字設(shè)置字體的顏色和加粗(這個(gè)部分可以通過(guò)錄制宏修改)
▼ 代碼執(zhí)行效果
源碼:
Option Explicit
'功能:
關(guān)鍵詞查詢(xún)并標(biāo)記紅色+加粗
'
作者:
E精精
'公眾號(hào):
Excel辦公實(shí)戰(zhàn)
'
日期:
20211207
'---------------------------------------------
Sub 關(guān)鍵詞查詢(xún)()
????Dim rng As Range '
定義一個(gè)單元格變量
????Dim idx
As
?Long
'科技出現(xiàn)的位置
????'
遍歷C3:
C18這個(gè)區(qū)域
????
For
?Each rng In Range(
"C3:C18"
)
????????idx = InStr(rng.Value,
"科技"
)
????????
If
?idx >
0
?Then
????????????With
rng.Characters(idx,
2
).Font
????????????????.Color
= vbRed
'設(shè)置為紅色
????????????????.Bold
= True '
字體加粗
????????????End
With
????????End
If
????Next
End Sub
代碼基本都有注釋?zhuān)绻约菏褂每梢院?jiǎn)單修改一下 需要處理的數(shù)據(jù)區(qū)域!
C3:C18
這里我們用到了一種新的循環(huán)方式,不同于上次我們講乘法口訣使用的按次循環(huán),本次是按對(duì)象迭代,區(qū)域中的每一個(gè)單元格都會(huì)本遍歷,如果是一個(gè)區(qū)域,會(huì)按照先行后列的順序處理!
看打印結(jié)果,依次是A1->B1->A2->B2!
字體的處理,我們使用Range.對(duì)象,如果你不會(huì)寫(xiě),其實(shí)可以通過(guò)錄制宏,自己設(shè)置一下字體顏色得到,不過(guò)錄制宏的代碼冗余很多,自己找到關(guān)鍵地方提取!
新手可以提取以上框起來(lái)的核心代碼,如果你熟悉,就可以直接自己寫(xiě)了,代碼不完全一樣,效果一樣的!
如果你還想把這些內(nèi)容提取出來(lái)那么excel查找關(guān)鍵字并篩選出來(lái),使用函數(shù)比較簡(jiǎn)單!
當(dāng)然我們也可以使用代碼,直接加一兩句即可!但是如果你先做的更加友好通用一些,我們就需要加億點(diǎn)點(diǎn)細(xì)節(jié) 考慮通用性和容錯(cuò)!
▲千篇原創(chuàng),您的問(wèn)題,都有答案,只差一個(gè)關(guān)注
然后就變成這樣了excel查找關(guān)鍵字并篩選出來(lái),代碼模板為什么不太好開(kāi)發(fā),因?yàn)橐紤]的東西太多,每一個(gè)環(huán)節(jié)實(shí)際都有可能出現(xiàn)奇奇怪怪的操作,所以……
▼模板-加入交互和容錯(cuò)!
模板下載:后臺(tái)回復(fù)關(guān)鍵詞:cx001
今天就到這里!都看到這里了,要不來(lái)個(gè)“三連”,鼓勵(lì)一下小編吧!