VBA „InStr“ 5 populiariausi „Excel VBA InStr“ funkcijos pavyzdžiai

„Excel VBA InStr“ funkcija

Instr VBA yra naudojamas norint sužinoti tam tikros eilutės vietą eilutėje, kai mes nurodome funkcijos palyginimo metodą, yra keturi skirtingi šios funkcijos palyginimo metodai, Instr yra eilutės funkcija, tačiau funkcijos grąžinta išvestis yra skaitmeninis, todėl šios funkcijos išvestis yra sveikojo skaičiaus kintamasis.

Stygos VBA yra ne kas kita, o simbolių serija, ty visi tekstai, pateikiami su dvigubomis kabutėmis, laikomi eilutėmis. „InStr“ funkcija yra įmontuota teksto funkcija, naudojama manipuliuoti eilutėmis. Pvz. - Jei norite ištraukti posakį iš sakinio arba norite pritaikyti šrifto dizaino pakeitimus tam tikrai eilutei, esančiai simbolių serijoje, arba jei norite rasti simbolio padėtį ir daugybę kitų galimybių, galite naudoti „InStr“

Sintaksė

Jame yra 4 argumentai, kaip parodyta žemiau esančiame paveikslėlyje.

  • [Pradėti]: Tai nėra privaloma. Tai yra skaitinė vertė, kurią turime nurodyti, nuo kurios eilutės „Instr“ funkcijos pradžios reikia ieškoti pateikto teksto. Pvz .: jei norite ieškoti simbolio „a“ žodyje „Bangalore“ iš 3 pozicijos, „Instr“ funkcijos pradinę poziciją turime pasakyti kaip 3. Taigi iš 3 pozicijos simbolis „a“ yra 5 pozicijoje. Jei ignoruosite šį parametrą, numatytoji reikšmė yra 1.
  • 1 eilutė: Tai yra tikroji eilutė, kurią mes teikiame, ty iš šio teksto bandome rasti poskyrį. Pavyzdžiui, jei ieškote „Bangalore“ eilutės „a“ , Bangalore - 1 eilutės.
  • 2 eilutė: tai ne kas kita, o tai, ko ieškome eilutės. Pavyzdžiui, jei jūs ieškote už eilutę "a" ir "Bangalore", Styginių 2 yra .
  • [Palyginti]: tai vėlgi neprivalomas argumentas. Argumente [palyginti] yra trijų rūšių parinkčių.

  • „vbBinaryCompare“: tai ne kas kita, kaip didžiųjų ir mažųjų raidžių paieška eilutėje (2 eilutė) 1 eilutėje. Pvz., jei ieškome „a“ žodyje „Bangalore“, „ Instr“ rezultatas būtų 2, o jei ieškote už „A“ žodyje „Bangalore“ Instr rezultatas būtų 0, nes pateikiama eilutė yra didžiųjų raidžių reikšmė.

Taip pat argumentu galime įvesti nulį (0).

vbTextCompare: Tai nėra didžiųjų ir mažųjų raidžių paieška eilutėje 2 eilutėje 1. Pavyzdžiui, jei ieškome „a“ žodyje „Bangalore“, „ Instr“ rezultatas būtų 2, o jei ieškote „A“ žodyje „Bangalore“ Instr grįžtų ir 2. Logika yra A = a, B = b, C = c ir kt.

Taip pat argumentu galime pateikti vieną (1).

„vbDatabaseCompare“: jis naudojamas norint palyginti informaciją iš jūsų duomenų bazės, ty „Microsoft Access“ duomenų bazės.

Taip pat argumentu galime pateikti vieną (-1).

5 populiariausi VBA Instr funkcijos naudojimo pavyzdžiai

Šį „VBA Instr Function Excel“ šabloną galite atsisiųsti čia - „VBA Instr Function Excel“ šablonas

1 pavyzdys

Pradėkime nuo pirmojo pavyzdžio. Žodžiu Bangalore raskite veikėjo padėtį a.

Žemiau kodas atliks mums užduotį.

Kodas:

 Sub Instr_Pavyzdys1 () Dim i As variantas i = InStr ("Bangalore", "a") MsgBox i End Sub 

Dabar paleiskite aukščiau pateiktą VBA kodą naudodami F5 klavišą arba taip pat galite paleisti šį kodą rankiniu būdu, kaip parodyta žemiau pateiktoje ekrano kopijoje.

Išvestis:

2 pavyzdys

Dabar žodyje „ Bangalore“ raskite veikėjo „a“ poziciją iš trečios pozicijos.

Žemiau pateiktas kodas atliks užduotį mums.

Kodas:

 Sub Instr_Pavyzdys2 () Dim i As variantas = InStr (3, „Bangalore“, „a“) ​​„MsgBox i End Sub“ 

Norėdami paleisti aukščiau pateiktą kodą, galite naudoti klavišą F5 arba šį kodą taip pat paleisti rankiniu būdu, kaip parodyta toliau pateiktoje ekrano kopijoje.

Išvestis:

Dabar aukščiau pateiktame paveikslėlyje pažvelkite į skirtumą nuo ankstesnio kodo. Kadangi paminėjome simbolio pradinę padėtį kaip 3, jis ignoravo pirmąjį simbolį „a“ 2-oje pozicijoje.

3 pavyzdys

Dabar matysime didžiųjų ir mažųjų raidžių paiešką. Žodyje Bangalore raskite raidę „A“.

Tam turime pateikti argumentą „palyginti“ kaip „ vbBinaryCompare“.

Kodas:

 Sub Instr_Pavyzdys3 () „Dim i“ variantas i = InStr (1, „Bangalore“, „A“, vbBinaryCompare) „MsgBox i End Sub“ 

Dabar paleiskite šį kodą naudodami F5 klavišą arba galite paleisti šį kodą rankiniu būdu.

Išvestis:

Pateikėme argumentą „Palyginti“, nes „ vbBinaryCompare Instr“ funkcija grąžino rezultatą kaip nulį, nes nėra didžiųjų raidžių „A“ .

4 pavyzdys

Dabar pamatysime dar vieną didžiųjų ir mažųjų raidžių paiešką. Žodyje Bangalore raskite raidę „A“. Ankstesnis pavyzdys grąžino rezultatą kaip nulį.

Norint įveikti didžiosios ir mažosios raidės metodą, turime pateikti argumentą „Palyginti“ kaip „ vbTextCompare“.

Kodas:

 Sub Instr_Pavyzdys4 () „Dim i“ variantas i = InStr (1, „Bangalore“, „A“, vbTextCompare) „MsgBox i End Sub“ 

Dabar paleiskite šį kodą naudodami F5 klavišą arba galite paleisti šį kodą rankiniu būdu.

Išvestis:

5 pavyzdys

Dabar pamatysime išplėstinį Instr funkcijos lygį. Jei turite daug lapų, turinčių daugiau ar mažiau panašų pavadinimą, ir norite visus tuos lapus paslėpti vienu metu, galime naudoti žemiau pateiktą kodą, kad paslėptumėte konkretų lapą.

Pavyzdžiui, turiu 5 lapus, pavadintus 1 santrauka, 2 santrauka, 3 santrauka, 4 santrauka ir duomenų lapas.

Dabar noriu paslėpti visus lapus, kuriuose yra žodis „Santrauka“. Naudokite žemiau esantį kodą, kad paslėptumėte visus lapus, kurių pavadinime yra žodis Santrauka.

Kodas:

 Sub To_Hide_Specific_Sheet () Tamsinti Ws kaip kiekvieno Ws darbalapį „ActiveWorkbook“. Darbo lapai, jei „InStr“ (Ws.Name, „Santrauka“)> 0, tada Ws.Visible = xlSheetVeryHidden End Jei „Next Ws“ funkcija „InStr“ ieško žodžio ar frazės lapo pavadinime "Jei jis ras, tada jis bus paslėptas 

Dabar paleiskite šį kodą naudodami F5 klavišą arba galite paleisti šį kodą rankiniu būdu ir pamatyti išvestį.

Panašiai, kad atvaizduotumėte visus tuos lapus, naudokite žemiau pateiktą kodą.

Kodas:

 Sub To_UnHide_Specific_Sheet () Tamsinti Ws kaip kiekvieno WS darbalapį „ActiveWorkbook“. Darbo lapai, jei InStr (Ws.Name, „Santrauka“)> 0, tada Ws.Visible = xlSheetVisible End Jei „Next Ws“ „InStr“ funkcija ieško žodžio ar frazės lapo pavadinime "Jei jis ras, tada jis bus paslėptas 

Dabar paleiskite šį kodą naudodami F5 klavišą arba galite paleisti šį kodą rankiniu būdu ir pamatyti išvestį.

Ką reikia atsiminti

  • Instr yra didžiosios ir mažosios raidės funkcija. Norėdami pašalinti šį neskelbtiną atvejį, argumentą [palyginti] turite pateikti kaip.
  • Jei ieškote didžiųjų ir mažųjų raidžių simbolio, turite pateikti argumentą [palyginti], nes pagal numatytuosius nustatymus VBA tai laiko argumentu, net jei nepateikiate.
  • Instr yra VBA funkcija, todėl negalite jo naudoti „Excel“ darbalapyje, kaip ir kitos integruotos formulės.
  • Jei funkcija neranda 2 eilutės, rezultatas bus lygus nuliui.

$config[zx-auto] not found$config[zx-overlay] not found