Змест
Калі вы шукаеце некалькі самых простых спосабаў знайсці падрадок з дапамогай VBA, то вы знаходзіцеся ў правільным месцы. Прачытаўшы гэты артыкул, вы зможаце знайсці пазіцыю падрадка або атрымаць дадзеныя з дапамогай гэтага падрадка або лёгка змяніць фармат падрадка. Давайце пяройдзем да артыкула.
Спампаваць працоўны сшытак
Прыклад зместу
9 спосабаў знайсці падрадок з дапамогай VBA
Тут у мяне ёсць наступнае табліца дадзеных, з дапамогай якой я пакажу спосабы пошуку падрадка ў радку з дапамогай VBA. Я таксама паспрабую паказаць спосабы пошуку падрадка ў выпадковым радку.
Я выканаў гэтую задачу з выкарыстаннем версіі Microsoft Excel 365 , вы можаце выкарыстоўваць любую іншую версію ў залежнасці ад вашага зручнасці.
Спосаб 1: Пошук падрадка ў радку з дапамогай VBA
Калі вы хочаце знайсці патрэбны падрадок у радку з дапамогай VBA, вы можаце выкарыстоўваць функцыя InStr у кодзе VBA.
Крок-01 :
➤Перайсці да Распрацоўшчык Укладка>> Visual Basic Option
Затым адкрыецца Visual Basic Editor .
➤Перайдзіце да Уставіць Tab>> Module Option
Пасля гэтага будзе створаны Module .
Крок-02 :
➤Напішыце наступны код
1641
Тут, InStr(1, “ Я думаю, значыць, я ёсць», «думаю») верне пазіцыю падрадка радка. 1 гэтапачатковая пазіцыя, « Я думаю, значыць, я ёсць» гэта радок, у якім вы знойдзеце патрэбны падрадок, а «думайце» гэта падрадок, які вы хочаце знайсці. Па змаўчанні ён адчувальны да рэгістра, таму будзьце ўважлівыя да рэгістра падрадка, у якім вы хочаце шукаць.
➤Націсніце F5
Вынік :
Пасля гэтага вы атрымаеце наступнае Вокна паведамлення , якое змяшчае пазіцыю “думаць” падрадка.
Спосаб 2: Пошук падрадка без уліку рэгістра ў радку
Калі вы хочаце знайсці патрэбны падрадок у радку незалежна ад рэгістра з дапамогай VBA, выканайце наступнае метад.
Крок-01 :
➤Выканайце Крок-01 з Метад-1
5240
Тут vbTextCompare выкарыстоўваецца для пошуку падрадка без уліку рэгістра.
➤Націсніце F5
Вынік :
Тады вы атрымаеце наступнае Вокна паведамлення , якое змяшчае пазіцыю “think” падрадка.
Вы можаце зрабіць тое ж самае, выкарыстоўваючы наступны код.
5161
Тут Параўнанне тэксту знойдзе падрадок без уліку рэгістра.
➤Націсніце F5
Вынік :
Пасля гэтага вы з атрымаю наступнае Вокна паведамлення , якое змяшчае пазіцыю “think” падрадка.
Спосаб 3: Выкарыстанне функцыі InstrRev у VBA
Тут я пакажу спосаб знайсці падрадок з канцарадок.
Крок-01 :
➤Выканайце Крок-01 з Метад-1
1881
InStrRev будзе знайсці падрадок справа, а не злева.
➤Націсніце F5
Вынік :
Тады вы атрымаеце наступнае Вокна паведамлення , якое змяшчае пазіцыю другога “I” падрадка з правы бок.
Спосаб 4: Пошук пазіцыі падрадка ў радку ў дыяпазоне даных
Калі вы хочаце знайсці спецыяльны сімвал “@” у Ідэнтыфікатар электроннай пошты , а затым прытрымлівайцеся гэтага метаду. Для гэтай мэты я дадаў сюды слупок "Пазіцыя" .
Крок-01 :
➤Выконвайце Крок-01 з Метад-1
9110
Ён створыць функцыю з назвай FindSubstring (вы можаце выкарыстоўваць любую іншую назву)
значэнне гэта спасылка на ячэйку, якая змяшчае радок і аб'яўлена як Дыяпазон .
Крок -02 :
➤Абярыце выхад Ячэйка E5
➤Увядзіце наступную функцыю (створаную VBA )
=FindSubstring(D5)
D5 - ячэйка, якая змяшчае радок.
➤Націсніце ENTER
➤Перацягніце ўніз Рэндык запаўнення Інструмент
Вынік :
Пасля гэтага вы атрымаеце пазіцыі спецыяльнага сімвала “ @” у Ідэнтыфікатары электроннай пошты .
Падобныя чытанні:
- Як знайсціРадок у ячэйцы з дапамогай VBA ў Excel (2 метады)
- FindNext з дапамогай VBA ў Excel (2 прыклады)
- Як знайсці радок з VBA ў Excel (8 прыкладаў)
- VBA Знайсці апошні радок у Excel (5 спосабаў)
Спосаб 5: Праверка пэўнага падрадка ў радок у дыяпазоне даных
Дапусцім, вы хочаце напісаць Здана ці Не адпавядае імёнам студэнтаў у залежнасці ад слупка Вынік дзе ў дужках напісана Здана ці Не праведзена . Каб знайсці гэты падрадок у слупку "Вынікі" і запісаць яго ў слупок здаў або не прайшоў , прытрымлівайцеся гэтага метаду.
Крок-01 :
➤Выканайце Крок-01 з Метад-1
7640
Тут дыяпазон ячэек C5:C10 , які з'яўляецца слупком вынікаў
InStr(cell.value, “Pass”) > 0 гэта ўмова, пры якой лік большы за нуль (калі ячэйка змяшчае «Здана» ), тады наступны радок будзе працягвацца і дасць вывад у суседняй ячэйцы як Здана .
Калі ўмова становіцца ілжывай, азначае, што ячэйка не ўтрымлівае ніякіх “Pass” , тады радок пад Else будзе выкананы і дасць вываднае значэнне ў суседнюю ячэйку як Збой .
Гэты цыкл будзе працягвацца для кожнай ячэйкі.
➤Націсніце F5
Вынік :
Тады вы атрымаеце наступныя вынікі ў Прайшло або не прайшло слупок.
Метад 6: Праверка пэўнага падрадка ў радку і выманне даных
Я пакажу спосаб знайсці названых студэнтаў Майкл у слупку Імя студэнта і выцягніце адпаведныя даныя з дапамогай VBA у гэтым метадзе.
Крок-01 :
➤Выконвайце Крок-01 з Метад-1
4488
Тут я выкарыстаў B100 як Дыяпазон актыўнага аркуша , але вы можаце выкарыстоўваць любы дыяпазон у адпаведнасці з вашым выкарыстаннем.
InStr(1, Range("B" & i), "Michael") > 0
гэта ўмова для праверкі, калі ячэйка ў слупок B змяшчае Майкл
Range("E" & icount & ":G" & icount)
гэта дыяпазон, дзе вы хочаце атрымаць выходныя даныя, а Range("B" & i & ":D" & i).value
дасць значэнні са слупкоў B да D .
➤Націсніце F5
Вынік :
Пасля гэтага вы атрымаеце наступныя вынятыя даныя для студэнтаў з імем Майкл .
Спосаб 7: Пошук слова ў падрадку
Калі вы хочаце знайсці падрадок як слова, то нізкі гэты метад.
Крок-01 :
➤Выканайце Крок-01 з Метад-1
2559
Будзе праверана, ці ўтрымлівае радок гэта , а потым будзе вызначана яго пазіцыя
➤Націсніце F5
Вынік :
Пасля гэтага вы атрымаеце наступнае акно паведамлення, якое паказвае слова, знойдзенае ў пазіцыі:6 (пазіцыя гэта ).
Вы можаце праверыцьвывядзіце гэты код для слова, якога няма ў радку.
➤Увядзіце наступны код
5081
➤Націсніце F5
Вынік :
Пасля гэтага вы атрымаеце наступнае акно паведамлення, якое паказвае слова не знойдзена .
Спосаб 8: Выкарыстанне Instr і функцыі LEFT
Тут я растлумачу спосаб пошуку пазіцыі падрадка ў радку і вылучэння тэкстаў перад гэтым падрадком з дапамогай VBA і функцыя LEFT .
Крок-01 :
➤Выканайце Крок-01 з Метад-1
7867
j = InStr(txt, "is")
гэта пазіцыя падрадка гэта і Left(txt, j - 1)
будзе выняць падрадкі перад гэта .
➤Націсніце F5
Вынік :
Пасля гэтага вы атрымаеце наступнае акно паведамлення, якое паказвае Тут (падрадок перад з'яўляецца ).
Метад-9: тоўсты шрыфт пэўны падрадок у радку
Вы можаце вылучыць адзнакі перад дужкамі ў слупку вынікаў , выконваючы гэты метад d.
Крок-01 :
➤Выканайце Крок-01 з Метад- 1
9236
txt = InStr(1, Cell, "(")
верне пазіцыю першай дужкі, а Cell.Characters(1, txt - 1).Font.Bold
зробіць падрадок перад першай дужкай тлустым .
Крок-02 :
➤Абярыце слупок вынікаў
➤Перайсці да Распрацоўшчык Укладка>> Макрасы Параметр
Затым, МакрасЗ'явіцца майстар .
➤Абярыце Boldingsubstring (кодавая назва VBA), а затым Выканаць .
Вынік :
Пасля гэтага адзнакі ў слупку Вынік будуць выдзелены тлустым шрыфтам.
Раздзел практыкі
Для практыкі самастойна мы забяспечылі раздзел Практыка , як паказана ніжэй, на аркушы пад назвай Практыка . Калі ласка, зрабіце гэта самастойна.
Выснова
У гэтым артыкуле я паспрабаваў ахапіць самыя простыя спосабы пошуку падрадка з дапамогай VBA у Excel эфектыўна. Спадзяюся, вы знойдзеце гэта карысным. Калі ў вас ёсць якія-небудзь прапановы або пытанні, не саромейцеся падзяліцца імі з намі.