Kumaha Milarian String sareng VBA dina Excel (8 Conto)

  • Bagikeun Ieu
Hugh West

Ngalaksanakeun VBA mangrupikeun cara anu paling efektif, panggancangna, sareng paling aman pikeun ngajalankeun operasi naon waé dina Excel. Dina artikel ieu, kami bakal nunjukkeun anjeun kumaha milarian string anu tangtu dina string anu sanés nganggo VBA dina Excel.

Unduh Citakan Praktek

Anjeun tiasa ngaunduh témplat Excel latihan gratis ti dieu.

VBA Pikeun Milarian dina String.xlsm

Fungsi InStr

Microsoft Excel boga pungsi diwangun-di disebut Fungsi InStr pikeun manggihan posisi string husus dina String tangtu.

Sintaksis Generik:

InStr([start], string1, string2, [compare])

Di dieu,

Argumen Diperlukeun/ Opsional Definisi
mimiti Opsional Posisi mimiti pamilarian.
  • Sacara standar, pungsi InStr ngitung posisi karakter ku cara ngitung ti 1, lain ti posisi mimiti. Janten, anjeun tiasa ngantepkeun ieu kosong upami anjeun hoyong.
string1 Dibutuhkeun String pikeun milarian, String Primer.
string2 Dibutuhkeun Senar pikeun milarian dina senar primér .
bandingkeun Opsional Pungsi InStr sensitip hurup sacara standar. Tapi upami anjeun hoyong ngajalankeun kasus anu teu merhatikeun InStr , maka anjeun tiasa ngalebetkeun argumen di dieu pikeun ngalakukeun perbandingan anu tangtu. Argumen ieu tiasa kieunilai,
  • vbBinaryCompare -> ngalakukeun babandingan binér, nilai balik 0
  • vbTextCompare -> ngalakukeun perbandingan téks, mulangkeun nilai 1
  • vbDatabaseCompare -> ngalakukeun perbandingan database, mulangkeun nilai 2

Sacara standar, InStr nyandak vbBinaryCompare salaku argumen ngabandingkeun.

8 Conto Gampang Pikeun Milarian Posisi String Spésifik dina String anu Ditunjukkeun Ngagunakeun VBA

Cobi tingali sababaraha conto saderhana pikeun kéngingkeun posisi senar anu tangtu dina senar anu dipasihkeun nganggo VBA .

1. VBA Pikeun Milarian Posisi Teks dina String

Di handap ieu conto InStr pikeun milarian posisi téks dina string.

  • Pencét Alt + F11 dina kibor Anjeun atawa buka tab Developer -> Visual Basic pikeun muka Visual Basic Editor .

  • Dina jandéla pop-up kode, tina bar ménu , klik Selapkeun -> Modul .

  • Ayeuna dina jandela kode, tulis program InStr basajan di jero VBA Sub Prosedur (tempo di handap).
5512

Kode anjeun ayeuna siap jalan.

  • Pencét F5 dina kibor Anjeun atawa tina bar ménu pilih Run -> Jalankeun Sub/UserForm . Anjeun oge bisa ngan klik dina ikon Play leutik dina sub-menu bar pikeun ngajalankeun makro.

Anjeun bakal nempo yén kotak pesen pop-up bakal masihan anjeun nomernyatakeun posisi téks anu anjeun hoyong pariksa.

Penjelasan:

Senar utama kami, " Kabagjaan nyaeta pilihan " nyaeta kalimah 21 hurup (kalawan spasi) jeung urang hayang manggihan posisi téks " pilihan " dina string éta. Téks " pilihan " dimimitian ti posisi 16 string primér, ku kituna urang meunang angka 16 salaku kaluaran kami dina kotak pesen.

2. VBA Pikeun Milarian Téks tina Posisi Spésifik dina String

Ayeuna hayu urang terang naon anu bakal kajadian upami urang hoyong kéngingkeun posisi tina nomer anu tangtu.

  • Sarua sareng sateuacanna, buka Visual Basic Editor tina tab Developer sareng Selapkeun a Modul dina jandela kode.
  • Dina dina jandela kode, tulis program InStr saderhana anu dipidangkeun di luhur sareng lebetkeun nilai dina argumen ngamimitian dumasar kana posisi anu anjeun hoyong cacah téks anjeun.
1499

  • Salajengna, Jalankeun kodeu.

Anjeun bakal nempo yén kotak pesen pop-up bakal masihan anjeun angka anu nyatakeun posisi téks mimitian tina posisi anu tangtu anu anjeun hoyong pariksa.

Penjelasan:

Sapertos anu parantos terang (tina diskusi fase 1) yén téks " pilihan " dimimitian tina posisi 16 , ku kituna urang nyelapkeun dua " pilihan ” dina senar primér sarta setel 17 salaku urangParameter ka-1 pikeun ngalangkungan " pilihan " munggaran. Ku kituna, urang Jalankeun makro di luhur sarta nembongkeun kami nomer posisi 27 nu persis angka posisi tina detik " pilihan " dina senar nu dibikeun.

3. VBA pikeun Milarian Téks sareng Fungsi InStr anu teu peka kana String

Ti bubuka fungsi InStr anjeun parantos terang yén sacara standar, fungsi InStr nyaeta case sensitive. Hayu urang manggihan eta kaluar kalawan conto.

Tingali kode VBA di handap, dimana urang hayang manggihan posisi kecap " Pilihan ” kalayan kapital “C” dina senar “ Kabagjaan nyaeta pilihan ” dimana pilihan ditulis ku leutik “c” .

  • Jalankeun kodeu jeung manggihan 0 salaku kaluaran urang.

Éta sabab fungsi InStr ngarawat modal "C" sareng "c" leutik béda. Janten milarian kecap " Pilihan " dina senar sareng henteu ngagaduhan patandingan, janten dipulangkeun 0 .

  • Pikeun nyieun InStr fungsi case-insensitive , setel argumen ngabandingkeun kana vbTextCompare (tempo di handap).
4657

  • Jalankeun kodeu.

Anjeun bakal meunang posisi téks tina senar, naha téksna ditulis ku huruf kapital atawa hurup leutik .

4. VBA pikeun Manggihan Téks tina Katuhu String

Nepi ka ayeuna InStr fungsi ngan méré posisi ti sisi kénca string. Tapi kumaha upami anjeun hoyong milarian posisi téks ti sisi katuhu senar.

Fungsi InStrRev milarian ti katuhu. Fungsi InStrRev jalanna sami sareng fungsi InStr sareng bakal mendakan anjeun posisi téks ti sisi katuhu senar.

Tingali conto di handap pikeun ngartos bédana.

  • Lamun urang ngajalankeun kodeu ieu kalawan fungsi InStr ,

eta masihan kami posisi ( 16 ) tina téks munggaran " pilihan ".

  • Tapi lamun urang ngajalankeun kodeu sarua jeung InStrRev Fungsi mangka,

nyaéta méré urang posisi ( 27 ) tina téks panungtungan " pilihan ".

Bacaan Sarua:

  • FindNext Ngagunakeun VBA dina Excel (2 Conto)
  • Kumaha Milarian sareng Ganti Nganggo VBA (11 Cara)
  • Teangan Cocog Pastina Ngagunakeun VBA dina Excel (5 Cara)

5. VBA Pikeun Milarian Posisi Karakter dina String

Anjeun ogé tiasa mendakan posisi karakter dina string dina cara anu sami sareng anjeun mendakan téks.

  • Salin nuturkeun kode kana VBA jandela kode anjeun
9563

  • Jeung Jalankeun makro.

" e " munggaran dina senar anu dipasihkeun nyaéta diangka 7 posisi.

6. VBA Pikeun Manggihan Substring dina String

Di dieu urang bakal diajar kumaha carana manggihan lamun string ngandung substring atawa henteu.

Pikeun meunangkeun éta, urang kudu pikeun ngajalankeun IF Statement dina kode urang.

  • Sarua jeung saméméhna, buka Visual Basic Editor tina tab Developer jeung Selapkeun a Modul dina jandela kode.
  • Dina jandela kode, salin kodeu di handap ieu teras tempelkeun.
8344

Anjeun kode ayeuna siap jalan.

  • Jalankeun makro.

Lamun string anjeun ngandung substring mangka anjeun bakal meunang cocok kapanggih , lamun henteu, éta bakal balik euweuh patandingan kapanggih. Dina conto urang, urang hayang manggihan naha string primér urang " Kabagjaan mangrupakeun pilihan " ngandung kecap " pilihan " atawa henteu. Salaku éta, urang meunang hasil Cocok kapanggih .

7. VBA pikeun Milarian String dina Range Sél

Anjeun tiasa milarian téks anu tangtu dina rentang sél senar sareng mulangkeun senar anu tangtu.

Tingali conto di handap ieu dimana urang bakal manggihan " Dr. " jeung lamun aya pertandingan bakal balik " Dokter ".

  • Di handap ieu kode pikeun meunangkeun hasil anu dibahas di luhur,
6410

  • Jalankeun kode sarta hasilna ditémbongkeun di handap ieu

  • Anjeun bisa ngaropéa makro numutkeun kabutuhan Anjeun. Contona, upami anjeun hoyongpikeun milarian " Prof. " dina sél string mana waé, sareng kéngingkeun " Profésor " salaku wangsul, teras lebetkeun " Prof. " salaku nilai tinimbang " Dr ." dina garis ka-4 makro sareng " Profesor " tinimbang " Dokter " dina garis ka-5 makro sareng tangtukeun nomer rentang sél sasuai.

8. VBA pikeun Milarian String dina Sél

Anjeun ogé tiasa néangan téks anu tangtu dina sél tunggal string sareng mulangkeun string anu tangtu.

  • Salin kode di handap ieu teras tempelkeun kana jandela kode.
2907

Bakal milarian " Dr. ” dina Sél B5 sareng upami mendakan patandingan teras mulangkeun " Dokter " dina Sél C5 .

  • Anjeun tiasa ngarobih makro numutkeun kabutuhan anjeun. Contona, upami anjeun hoyong milarian " Prof. " dina sél string mana waé, sareng kéngingkeun " Profésor " salaku wangsul, teras lebetkeun " Prof. " salaku nilai tibatan " Dr ." dina garis ka-2 makro sareng " Profesor " tinimbang " Dokter " dina garis ka-3 makro sareng tangtukeun nomer rujukan sél sasuai.

Kacindekan

Artikel ieu némbongkeun Anjeun cara manggihan téks nu tangtu dina string dina Excel maké VBA makro. Muga-muga tulisan ieu aya mangpaatna pikeun anjeun. Ngarasa Luncat nanya sagala patarosan ngeunaantopik.

Hugh West mangrupikeun palatih sareng analis Excel anu ngalaman langkung ti 10 taun pangalaman di industri. Anjeunna nyepeng gelar Sarjana Akuntansi sareng Keuangan sareng gelar Master dina Administrasi Bisnis. Hugh gaduh gairah pikeun ngajar sareng parantos ngembangkeun pendekatan pangajaran anu unik anu gampang diturutan sareng kahartos. Pangaweruh ahli ngeunaan Excel parantos ngabantosan rébuan mahasiswa sareng profésional di sakumna dunya ningkatkeun kaahlian sareng unggul dina karirna. Ngaliwatan blogna, Hugh ngabagi pangaweruhna ka dunya, nawiskeun tutorial Excel gratis sareng pelatihan online pikeun ngabantosan individu sareng usaha ngahontal poténsi pinuh.