Sut i Ddod o Hyd i Llinyn gyda VBA yn Excel (8 Enghraifft)

  • Rhannu Hwn
Hugh West

Gweithredu VBA yw'r dull mwyaf effeithiol, cyflymaf a mwyaf diogel i redeg unrhyw weithrediad yn Excel. Yn yr erthygl hon, byddwn yn dangos i chi sut i ddod o hyd i linynnau penodol mewn llinyn penodol arall gan ddefnyddio VBA yn Excel.

Lawrlwythwch Templed Ymarfer

Chi gallwch lawrlwytho'r templed Excel ymarfer rhad ac am ddim oddi yma.

VBA i Dod o Hyd iddo yn String.xlsm

Swyddogaeth InStr

Mae gan Microsoft Excel swyddogaeth adeiledig o'r enw y Swyddogaeth InStr i ganfod lleoliad tannau penodol mewn Llinyn penodol.

Cystrawen Generig:

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

Yma,

20>
Dadleuon Angenrheidiol/ Dewisol Diffiniad
cychwyn Dewisol Safle cychwyn y chwiliad.
  • Yn ddiofyn, mae'r ffwythiant InStr yn cyfrifo safle'r nod trwy gyfrif o 1, nid o'r safle cychwyn. Felly, gallwch chi adael hwn yn wag os dymunwch.
llinyn1 Angenrheidiol Y llinyn i chwilio ynddo, Prif Llinyn.
llinyn2 Angenrheidiol Y llinyn i chwilio amdano yn y llinyn cynradd .
cymharu Dewisol Mae ffwythiant InStr yn achos-sensitif yn ddiofyn. Ond os ydych chi eisiau rhedeg achos ansensitif InStr , yna gallwch chi basio'r ddadl yma i berfformio cymhariaeth benodol. Gall y ddadl hon fod fel a ganlyngwerthoedd,
  • vbBinaryCompare -> yn perfformio cymhariaeth ddeuaidd, gwerth dychwelyd 0
  • vbTextCompare -> yn perfformio cymhariaeth testun, gwerth dychwelyd 1
  • vbDatabaseCompare -> yn perfformio cymhariaeth cronfa ddata, gwerth dychwelyd 2

Yn ddiofyn, mae InStr yn cymryd vbBinaryCompare fel y ddadl cymharu.

8 Enghreifftiau Hawdd i Ddarganfod Safle Llinynnol Penodol yn y Llinyn a Roddwyd gan Ddefnyddio VBA

Gadewch i ni weld rhai enghreifftiau syml i gael safleoedd rhai llinynnau mewn llinyn penodol gan ddefnyddio VBA .

1. VBA i Dod o Hyd i Safle'r Testun yn y Llinyn

Isod mae enghraifft o InStr i ddod o hyd iddo lleoliad testun mewn llinyn.

  • Pwyswch Alt + F11 ar eich bysellfwrdd neu ewch i'r tab Datblygwr -> Visual Basic i agor Golygydd Sylfaenol Gweledol .

  • Yn y ffenestr cod pop-up, o'r bar dewislen , cliciwch Mewnosod -> Modiwl .

  • Nawr yn y ffenestr cod, ysgrifennwch raglen InStr syml y tu mewn i VBA Sub Trefn (gweler isod).
  • 6918
    ar eich bysellfwrdd neu o'r bar dewislen dewiswch Rhedeg -> Rhedeg Is-Ffurflen Ddefnyddiwr . Gallwch hefyd glicio ar yr eicon chwarae bach yn yr is-ddewislen i redeg y macro.

Fe welwch fod y bydd blwch neges naid yn rhoi rhif i chiyn datgan lleoliad y testun yr oeddech am ei wirio.

Esboniad:

Ein prif linyn, “ Hapusrwydd yn ddewis ” yn frawddeg 21 llythyren (gyda bylchau) ac roeddem am ddarganfod lleoliad y testun “ dewis ” yn y llinyn hwnnw. Dechreuodd y testun “ dewis ” o safle 16eg y llinyn cynradd, felly cawsom rif 16 fel ein hallbwn yn y blwch neges.

22> 2. VBA i Ddarganfod Testun o Safle Penodol yn Llinyn

Nawr, gadewch i ni ddarganfod beth fyddai'n digwydd pe baem am gael y sefyllfa o rif penodol.

  • Yn yr un modd ag o'r blaen, agorwch Golygydd Sylfaenol Gweledol o'r tab Datblygwr a Mewnosod Modiwl yn y ffenestr cod.
  • Yn y ffenestr cod, ysgrifennwch raglen InStr syml a ddangosir uchod a phasiwch y gwerth yn yr arg cychwyn yn ôl y safle rydych am gyfrif eich testun ohoni.
7453

  • Nesaf, Rhedwch y cod.

Fe welwch y bydd y blwch negeseuon naid yn rhoi rhif i chi yn datgan lleoliad y testun gan ddechrau o safle arbennig yr oeddech am ei wirio.

Eglurhad:

Fel y gwyddem eisoes (o’r drafodaeth cam 1) fod y testun “ choice ” wedi cychwyn o’r safle 16 , felly fe wnaethom fewnosod dau “ dewis " yn y llinyn cynradd a gosod 17 fel einParamedr 1af i hepgor y “ dewis ” cyntaf. Felly, rydym yn Rhedeg y macro uchod a dangosodd rif safle i ni 27 sef union rif safle'r eiliad dewis ” yn y llinyn a roddwyd.

3. VBA i Dod o Hyd i Destun gyda Swyddogaeth InStr sy'n ansensitif i Achos yn y Llinyn

O gyflwyno'r ffwythiant InStr rydych eisoes yn gwybod bod y ffwythiant InStr yn ddiofyn yn sensitif i achosion. Gadewch i ni ddarganfod hynny gydag enghraifft.

Gweler y cod VBA a ganlyn, lle roeddem am ddod o hyd i leoliad y gair “ Choice ” gyda chyfalaf “C” yn y llinyn “ Mae hapusrwydd yn ddewis ” lle mae dewis yn cael ei ysgrifennu gyda c” bach .

  • Rhedwch y cod a darganfyddwch 0 fel ein hallbwn.

Mae hynny oherwydd bod ffwythiant InStr yn trin cyfalaf “C” a bach “c” yn wahanol. Felly fe chwiliodd am y gair “ Choice ” yn y llinyn ac ni chafodd unrhyw gyfatebiaeth, felly dychwelodd 0 .

  • I wneud y ffwythiant InStr cas-ansensitif , gosodwch y ddadl cymharu i vbTextCompare (gweler isod).
4858

35>

  • Rhedwch y cod.

Fe gewch chi safle y testun o'r llinyn, p'un a yw'r testun wedi'i ysgrifennu mewn prif lythrennau neu lythrennau bach .

4. VBA i Ffeindio Testun o Dde Llinyn

Hyd yn hyn roedd ffwythiant InStr ond yn rhoi'r safle o ochr chwith y llinyn i ni. Ond beth os ydych am ddod o hyd i leoliad y testun o ochr dde'r llinyn.

Mae Swyddogaeth InStrRev yn chwilio o'r dde. Mae'r ffwythiant InStrRev yn gweithio'n debyg iawn i ffwythiant InStr a bydd yn dod o hyd i leoliad testun o ochr dde y llinyn.

0>Gweler yr enghreifftiau canlynol i ddeall y gwahaniaeth.
  • Os ydym yn rhedeg y cod canlynol gyda'r ffwythiant InStr yna,

mae'n rhoi safle ( 16 ) y testun cyntaf “ dewis ” i ni.

3>

  • Ond os ydym yn rhedeg yr un cod gyda'r swyddogaeth InStrRev yna,

mae'n rhoi'r sefyllfa i ni ( 27 ) o’r testun olaf “ dewis ”.

Darlleniadau tebyg:

  • CanfodNesaf Gan Ddefnyddio VBA yn Excel (2 Enghraifft)
  • Sut i Ddarganfod ac Amnewid Gan Ddefnyddio VBA (11 Ffordd)
  • Dod o Hyd i'r Union Baru Gan Ddefnyddio VBA yn Excel (5 Ffordd)

5. VBA i Dod o Hyd i Safle Cymeriad mewn Llinyn

Gallwch hefyd ddod o hyd i leoliad nod arbennig mewn llinyn yn yr un ffordd ag y daethoch o hyd i destun.

  • Copïwch y yn dilyn y cod i mewn i'ch ffenestr cod VBA
8963

  • A Rhedeg y macro.

Mae’r “ e ” cyntaf yn ein llinyn a roddwyd ynsafle'r rhif 7 .

6. VBA i Dod o Hyd i Is-linyn mewn Llinyn

Yma byddwn yn dysgu sut i ddarganfod a yw llinyn yn cynnwys is-linyn ai peidio.

I gael hynny, mae gennym ni i redeg Datganiad IF yn ein cod.

  • Yr un ffordd ag o'r blaen, agorwch Golygydd Sylfaenol Gweledol o'r tab Datblygwr a Mewnosod a Modiwl yn y ffenestr cod.
  • Yn y ffenestr cod, copïwch y cod canlynol a'i gludo.
7417

Eich mae'r cod nawr yn barod i'w redeg.

  • Rhedeg y macro.

Os yw eich llinyn yn cynnwys yr is-linyn yna fe gewch cyfatebiaeth , fel arall, ni fydd yn dychwelyd unrhyw un sy'n cyfateb. Yn ein hesiampl, roeddem am ddarganfod a yw ein llinyn cynradd “ Mae hapusrwydd yn ddewis ” yn cynnwys y gair “ dewis ” neu ddim. Fel mae'n ei wneud, rydyn ni'n cael canlyniad Canfuwyd Cyfateb .

7. VBA i Dod o Hyd i Llinyn mewn Ystod Cell

Gallwch chwilio am destun penodol mewn ystod cell o linyn a dychwelyd llinyn penodol.

Edrychwch ar yr enghraifft ganlynol lle byddwn yn dod o hyd i “ Dr. ” a phan fydd cyfatebiaeth bydd yn dychwelyd “ Doctor ”.

  • Isod mae'r cod i gael y canlyniad a drafodwyd uchod,
2342

  • Rhedwch y cod a dangosir y canlyniad isod

  • Gallwch addasu'r macro yn ôl eich angen. Er enghraifft, os ydych chi eisiaui ddod o hyd i “ Prof. ” mewn unrhyw gell llinyn, a chael “ Professor ” fel dychwelyd, yna pasiwch “<1 Prof. " fel y gwerth yn lle " Dr ." yn 4edd llinell y macro ac “ Professor ” yn lle “ Doctor ” yn 5ed llinell y macro a diffiniwch y rhif amrediad cell yn unol â hynny.

8. VBA i Dod o Hyd i Llinyn mewn Cell

Gallwch hefyd chwilio am destun penodol mewn cell sengl o linyn a dychwelyd llinyn penodol.

  • Copïwch y cod canlynol a'i gludo i'r ffenestr cod.
7438

Bydd yn chwilio am “ Dr. ” yn Cell B5 ac os yw'n dod o hyd i'r cyfatebiad yna mae'n dychwelyd “ Doctor ” yn Cell C5 .

  • Gallwch addasu'r macro yn ôl eich angen. Er enghraifft, os ydych chi am ddod o hyd i “ Prof. ” mewn unrhyw gell llinyn, a chael “ Professor ” fel dychweliad, yna pasiwch “ Prof. ” fel y gwerth yn lle “ Dr .” yn 2il linell y macro ac “ Professor ” yn lle “ Doctor ” yn 3edd llinell y macro a diffiniwch y cyfeirnod cell yn unol â hynny.

Casgliad

Dangosodd yr erthygl hon i chi sut i ddod o hyd i destunau penodol mewn llinyn yn Excel gan ddefnyddio VBA macro. Gobeithio bod yr erthygl hon wedi bod yn fuddiol iawn i chi. Mae croeso i chi ofyn unrhyw gwestiynau amy pwnc.

Mae Hugh West yn hyfforddwr a dadansoddwr Excel hynod brofiadol gyda dros 10 mlynedd o brofiad yn y diwydiant. Mae ganddo radd Baglor mewn Cyfrifeg a Chyllid a gradd Meistr mewn Gweinyddu Busnes. Mae gan Hugh angerdd am addysgu ac mae wedi datblygu dull addysgu unigryw sy’n hawdd ei ddilyn a’i ddeall. Mae ei wybodaeth arbenigol o Excel wedi helpu miloedd o fyfyrwyr a gweithwyr proffesiynol ledled y byd i wella eu sgiliau a rhagori yn eu gyrfaoedd. Trwy ei flog, mae Hugh yn rhannu ei wybodaeth gyda’r byd, gan gynnig tiwtorialau Excel am ddim a hyfforddiant ar-lein i helpu unigolion a busnesau i gyrraedd eu llawn botensial.