FIND fungsi dina VBA: Kumaha ngagunakeun éta?

hoyong diajar kumaha ngagunakeun FIND fungsi dina VBA🇧🇷 Teras anjeun dina tempat anu leres!

Saha anu henteu terang pilihan SEARCH dina Excel? Upami anjeun parantos damel sareng Excel samentawis, anjeun panginten parantos nganggo fungsi SEARCH atanapi konci potong kompas Ctrl + L anu populér pikeun milarian kecap atanapi sapotong eusi anu anjeun hoyong milarian dina lembar kerja anjeun. kawas sakabeh workbook.

Ogé, dina VBA kami ngagaduhan fungsi anu disebut FIND anu tiasa ngabantosan urang mendakan nilai anu urang pilari.

Turutan rinci di handap pikeun leuwih jéntré ngeunaan fitur ieu ngaliwatan conto praktis.

Kumaha fungsi FIND dianggo dina VBA?

Fungsi Excel VBA FIND milarian nilai khusus dina rentang khusus. Tingali pikeun lumangsungna mimiti nilai éta, sarta lamun kapanggih, fungsi mulih sél nu ngandung eta. Sanajan kitu, lamun euweuh cocok kapanggih, fungsi mulih nanaon. Fungsi VBA FIND tiasa ngabalikeun pertandingan pasti atanapi parsial.

Contona, kodeu handap maluruh téks "Saint Paul» dina interval A1:A10 id «Lembar Kerja1🇧🇷

Kalayan Lembar ("Lambaran1"). Rentang ("A1:A10")
Atur Rng = .Teangan(Naon:="São Paulo")

Tujuan ngagunakeun fungsi FIND dina VBA nyaéta pikeun milarian nilai anu dipikahoyong dina set data anu dipasihkeun. Kalayan kode VBA, anjeun tiasa ngajadikeun otomatis tugas milarian nilai dina Excel.

Sintaksis Fungsi VBA FIND

Sintaksis fungsi VBA FIND dinyatakeun kieu:

expression.Find(Naon, Saatos, LookIn, LookAt, SearchOrder, SearchDirection, MatchCase, MatchByte, SearchFormat)

Dimana:

babasan: mangrupa objék rentang, nu miheulaan fungsi FIND dina kode VBA. Rentang pamilarian tiasa janten hiji atanapi langkung baris, kolom, atanapi sadayana spreadsheet. Fungsi VBA FIND nampi argumen di handap ieu:

  • naon: Ieu nilai néangan. Bisa jadi numerik, tékstual, atawa tipe data Excel lianna. Argumen ieu sami sareng pilihan Teangan tina "manggihan tur ngaganti"tina Excel.
  • Saatos: Nunjukkeun sél ti mana pilarian bakal ngamimitian. Ieu diasupkeun salaku rujukan sél tunggal. Lamun argumen ieu disingkahkeun, pilarian dimimitian sanggeus sél di belah kénca juru luhur rentang pilarian dieusian.
  • Ningali kana: Ieu mangrupikeun lokasi (atanapi data) dimana nilaina kedah ditingali. Éta tiasa janten koméntar (xlComments), rumus (xlFormulas) atanapi nilai (xlValues). Nilai standar pikeun argumen ieu xlFormulas. Ogé, argumen ieu sami sareng pilihan Milarian tina "manggihan tur ngaganti"tina Excel.
  • Neuteup: Argumen ieu mutuskeun naha cocog sakabéh eusi sél (cocok pasti) atawa bagian tina eusi sél (cocok parsial). Konstanta nyaéta xlWhole jeung xlPart pikeun patandingan pasti jeung parsial, masing-masing. Nilai standar pikeun argumen ieu xlPart.
  • Urutan milarian: Argumen ieu nunjukkeun urutan pilarian. Anjeun tiasa nangtukeun naha pilarian bakal baris (xlByRows) atawa kolom (xlByColumns). Nilai standar pikeun argumen ieu xlByRows. Ogé, argumen ieu sami sareng pilihan Milarian tina "manggihan tur ngaganti"tina Excel.
  • Milarian alamat: Nunjukkeun alamat dimana pamilarian bakal dilakukeun. Anjeun tiasa milarian ka handap atanapi ka sél salajengna nganggo konstanta xlNext. Alternatipna, anjeun tiasa milarian ka tukang (kaluhur) atanapi dina sél saacanna nganggo konstanta xlPrevious. Nilai standar pikeun argumen ieu xlNext.
  • Kasus pertandingan: Argumen ieu mutuskeun naha pamilarian kedah sénsitip atanapi henteu. Upami pamilarianna sénsitip, argumen ieu ditetepkeun leres (BENER), upami henteu palsu (PALSU). Nilai standar pikeun argumen ieu Palsu.
  • MatchByte: Argumen ieu kedah dianggo upami aya anu parantos masang atanapi milih dukungan basa bait ganda. Kedah dieusian leres upami karakter bait ganda cocog sareng karakter bait ganda. Kudu dieusian salaku palsu lamun karakter ganda-bait bakal cocog jeung sarimbag bait tunggal maranéhanana.
  • format pilarian: Nunjukkeun naha nilai anu diteangan kedah dina format khusus (sapertos kandel atanapi miring) atanapi henteu. Lamun nilai lookup kudu nuturkeun téhnik pormat, argumen ieu dieusian salaku leres, disebutkeun palsu. Nilai standar argumen ieu palsu (PALSU).

ngan argumen naon diperlukeun. Argumen séjén nyaéta pilihan.

Fungsi FIND mulihkeun salah sahiji hasil ieu:

  • Mun hiji patandingan kapanggih, fungsi nu mulih sél munggaran dimana nilai kapanggih.
  • Mun euweuh cocok kapanggih, fungsi mulih nanaon. Ieu kusabab objek fungsi disetel ka nanaon.

Alternatipna, lamun euweuh cocok kapanggih, pesen custom dieusian via fungsi kotak pesen tiasa dipulangkeun (tingali conto kode di handap).

Catetan 1: Pilarian dimimitian sanggeus sél dieusian dina argumen. Sanggeus tur terus ka sél panungtungan dina rentang pilarian. Lamun nilaina teu kapanggih nepi ka sél panungtungan ieu, pilarian dimimitian deui ti sél munggaran dina rentang pilarian ka sél dieusian dina argumen. Sanggeus🇧🇷

Ku alatan éta, sél dieusian dina argumen Sanggeus eta ditéang dina ahir prosés pilarian. Pikeun leuwih jéntré ngeunaan pamakéan argumen Sanggeustingali conto kadua dina artikel ieu.

Catetan 2: Unggal waktos fungsi VBA FIND dipaké, éta ningali kana🇧🇷 Neuteup🇧🇷 urutan pilarian y MatchByte Ku kituna, upami nilai-nilai ieu dileungitkeun dina waktos salajengna fungsina dianggo, Excel bakal nganggo nilai anu disimpen sateuacana. Ku alatan éta, disarankeun pikeun sacara eksplisit nyatakeun argumen anu disayogikeun iraha waé panéangan dilaksanakeun nganggo fungsi VBA FIND.

Kumaha ngagunakeun fungsi FIND dina Excel VBA?

Supados anjeun ngartos pamakéan fungsi FIND di VBA, kami geus dipisahkeun sababaraha conto praktis handap.

Conto 1: Milih sél kalayan lumangsungna munggaran nilai pilarian

Dina conto munggaran ieu, anggap anjeun gaduh daptar nu ngandung sababaraha ngaran ditémbongkeun saperti dina gambar di handap ieu, tur Anjeun hoyong kotektak tur pilih sél nu ngandung ngaran. Pedro🇧🇷

Ti dinya, tuturkeun léngkah ieu:

1. Aksés pituduh Pamekar 🇧🇷 dasar visual🇧🇷 (Upami anjeun teu gaduh tab Pangembang diaktipkeun dina Excel anjeun, pariksa di dieu léngkah-léngkah).

pituduh pamekar

dua. Dina layar VBA, pilih lembar kerja anu dipikahoyong tina ménu di kénca. Dina conto ieu, urang bakal milih Lembar Kerja1 nu mangrupa LKS nu ngandung daptar ngaran.

3. Sanggeus milih lembar kerja nu dipikahoyong, di wewengkon katuhu, asupkeun kodeu handap:

Pilih sél kalayan lumangsungna munggaran nilai searched

SubLocateName()
Rentang ("A1: A10"). Pilarian (Naon: = "Peter"). Pilih
tungtung Sub
  • Perhatikeun dina kode di luhur yén urang nyarioskeun rentang anu urang pilari (A1: A10🇧🇷
  • Sanggeus nyebut rentang, nempatkeun titik (.) jeung tipe MANGGIH🇧🇷
  • Argumen kahiji urang anu urang pilari. Pikeun nyorot argumen, urang tiasa lulus argumen naon:=ieu bakal mangpaat pikeun ngaidentipikasi parameter nu urang ngarujuk kana.
  • Bagian ahir nyaéta sanggeus manggihan kecap naon urang rék ngalakukeun. Urang kudu milih kecap, jadi lulus argumen salaku .Pilih🇧🇷
  • Teras ngajalankeun kode ieu nganggo konci F5 atanapi sacara manual sapertos anu dipidangkeun dina gambar di handap ieu pikeun milih sél munggaran anu ngandung nami Pedro🇧🇷

lokasina di VBA

Conto 2: Pilih sél anu lumangsung kadua tina nilai pilarian

Dina conto kadua ieu, perhatikeun yén gambar di handap ieu ngandung sababaraha ngaran dina rentang A1:A10. Catet yén ngaran "Pedro” nembongan dua kali dina kolom A.

Pilih sél anu lumangsung kadua

Dina hal ieu, urang hoyong milarian tur pilih kajadian kadua tina nami "Peter" dina kolom A (nyaéta, sél A7). Jang ngalampahkeun ieu kami bakal nganggo kode di handap ieu:

NANGGIH kajadian kadua VBA

SubLocateName()
Rentang ("A1: A10"). Pilarian (Naon:="Peter", Saatos: = Rentang ("A2")).Pilih
tungtung Sub

Perhatikeun dina kode di luhur yén pilarian dimimitian sanggeus sél A2 terus ka sél panungtungan dina kolom A. Ieu kusabab rentang pilarian ieu dieusian salaku kolom A (A1: A10).

Janten, saprak pamilarian dimimitian dina sél A3, nilai "Pedro” aya dina sél A7 masihan"hamparan2🇧🇷 Ku ​​alatan éta, sél A7 bakal dipilih ku fungsi FIND nalika ngajalankeun kode.

Lamun ngaranna "Pedro” teu acan kapendak dina sél A3 dugi ka sél terakhir dina kolom A, pamilarian bakal ngamimitian deui dina sél A1 sareng ditungtungan dina sél A2 ayeuna. Ku alatan éta, sél dieusian dina argumen "Sanggeus” diteangan katuhu dina ahir prosés pilarian.

Conto 3: Teangan téks ku cara nangtukeun sababaraha karakterna

Pikeun milarian téks ku ngan ukur nangtukeun bagian tina éta, lebetkeun argumen Neuteup Como xlBagian atawa ngaleungitkeun argumen ieu. Sacara standar, fungsi FIND cocog karakter dina nilai pilarian ngalawan sakabéh string. Ieu lajeng mulih sél nu ngandung sakabéh string ieu.

Tingali conto di handap ieu:

SubLocateName()
Range("A1:A10").Teangan(Naon:="Ped", LookAt:=xlPart).Pilih
tungtung Sub

Kode ieu milarian karakter "nanya" dina rentang A1: A25 tina "Sheet3". Sél anu ngandung nilai dipulangkeun, anu dingaranan korespondensi parsial🇧🇷 Janten, henteu paduli naha karakter nilai pamilarian disimpen di awal, tengah, atanapi tungtung senar, Excel VBA ngabalikeun pertandingan.

Catet: konstanta xlBagian eta bisa disingkahkeun tina kode sabab mangrupakeun nilai standar tina fungsi FIND. Tapi lamun argumen ieu dieusian, pastikeun eta teu enclosed dina tanda petik ganda.

Conto 4: Milarian téks dina koméntar

Anjeun ogé tiasa nganggo fungsi VBA FIND pikeun milarian téks dina koméntar sél dina Excel.

Pikeun pamahaman anu langkung saé, tingali conto di handap ieu dimana urang gaduh lembar kerja anu ngandung tilu sél sareng koméntar (ditunjukkeun ku segitiga beureum). Ti ieu urang hayang manggihan téks "komisi dibayar” aya dina salah sahiji koméntar. Dina hal ieu, urang bakal nganggo kode di handap ieu:

SubLocateKoméntar()
Range("A1:B10").Teangan(Naon:="Komisi Mayar", LookIn:=xlComments).Pilih
tungtung Sub

Manggihan téks dina komentar

Hasilna, Excel ngan ukur bakal milih sél anu ngandung koméntar anu téksna ditetepkeun dina kode urang.

Conto 5: Kasalahan nanganan dina fungsi FIND di VBA

Upami téks anu urang milarian henteu aya dina rentang anu dipasihkeun, VBA bakal ngabalikeun kasalahan sapertos anu dipidangkeun di handap ieu:

kasalahan 91

Pikeun ngahindarkeun kasalahan ieu, urang tiasa nganggo kode sapertos anu dipidangkeun di handap ieu:

SubLocateName()
Hasil Taram Salaku Varian

Dina Kasalahan ngahanca Salajengna
Rentang ("A1: A10"). Pilarian (Naon: = "Cristina"). Pilih
Dina Kasalahan GoTo 0

Hasil = ActiveCell.Value

Lamun Hasil = "" Lajeng
MsgBox "Nilai anu dipilarian henteu sayogi dina rentang anu disayogikeun!"
Kaluar Sub
mungkas Mun

tungtung Sub

Perhatikeun dina kode di luhur yén lamun VBA manggih nilai, éta bakal nembongkeun nilai kapanggih, atawa nu sejenna bakal nembongkeun pesen salaku "Nilai nu Anjeun keur pilari teu sadia dina rentang dibikeun🇧🇷

Pikeun langkung seueur tip ngeunaan cara ngalereskeun kasalahan VBA, pariksa tulisanna: Kasalahan Excel VBA: sadayana anu anjeun kedah terang!

Rincian pikeun diinget

  • Fungsi FIND mangrupikeun bagian tina sipat RANGE sareng anjeun kedah nganggo FIND saatos milih rentang.
  • Dina fungsi FIND, argumen kahiji (naon), ditambah sagalana sejenna nyaeta pilihan.
  • Upami anjeun mendakan nilai saatos sél khusus, anjeun tiasa nyebatkeun sél dina parameter Sanggeus tina sintaksis pilarian.

Unduh spreadsheet di dieu ngandung conto dibere dina tutorial ieu.

Pariksa ogé tip Excel ieu:

Janten kumaha saur anjeun ngeunaan fungsi FIND dina VBA? Upami anjeun aya patarosan, tinggalkeun koméntar anjeun di handap. Parios ogé langkung seueur tip Excel sareng VBA dina halaman wéb kami!

Tommy Banks
Urang bakal senang ngadéngé naon pikir

ninggalkeun balesan

TechnoBreak | Nawaran sarta ulasan
logo
Aktipkeun ngadaptar dina setélan - umum
Karanjang balanja