Sut i Ddefnyddio'r Swyddogaeth Darganfod yn VBA (6 Enghraifft)

  • Rhannu Hwn
Hugh West

Un o'r swyddogaethau pwysicaf a ddefnyddir yn helaeth a ddefnyddiwn yn Cymhwysiad Sylfaenol Gweledol (VBA) yw'r swyddogaeth Darganfod. Yn yr erthygl hon, byddaf yn dangos i chi sut y gallwch ddefnyddio'r swyddogaeth FIND o Excel gydag enghreifftiau a darluniau cywir.

Lawrlwythwch Gweithlyfr Ymarfer

<6 Dod o Hyd i Swyddogaeth yn VBA yn Excel.xlsm

6 Enghreifftiau Cyflym i Ddefnyddio'r Swyddogaeth DARGANFOD yn VBA

Dyma ni wedi wedi cael set ddata gyda Enwau Llyfrau, Awduron a Pris rhai o lyfrau siop lyfrau o'r enw Martin Bookstore.

Heddiw ein hamcan yw gweld gwahanol fathau o ddefnyddiau o'r ffwythiant Canfod o VBA o'r set ddata hon.

1. Defnyddiwch y Swyddogaeth Darganfod yn VBA gyda Dim Paramedr

Gallwch ddefnyddio'r Fod swyddogaeth o VBA heb unrhyw baramedrau.

Yna mae'n yn chwilio am werth penodol o fewn ystod o gelloedd ac yn dychwelyd y cyfatebiad cyntaf y mae'n ei ddarganfod.

Dewch i ni chwilio am yr enw “P. B. Shelly” yn y golofn Awdur ( C4:C13 ).

Y llinell gyda'r swyddogaeth Dod o hyd i fydd:

Set cell = Range("C4:C17").Find("P. B. Shelly")

Cod VBA cyflawn cyflawn fydd:

Cod VBA:

7115

Allbwn:

Mae'n cynhyrchu Macro o'r enw Find . Os ydych chi'n rhedeg y Macro, bydd yn dychwelyd $C$6 , y cyfeiriad cell cyntaf gyda'r enw P. B. Shelly .

Darllenwch fwy: Canfod o fewn Ystod gyda VBA ynExcel: Gan Gynnwys Cyfatebiaethau Union a Rhannol

2. Cymhwyswch y Swyddogaeth Darganfod yn VBA gyda'r Paramedr Ar ôl (I Ddechrau Chwilio o Gell Benodol)

Gallwch ddefnyddio'r paramedr Ar ôl gyda'r swyddogaeth Dod o hyd i yn VBA . Yna bydd yn dechrau chwilio am werth o dan gell o fewn ystod.

Er enghraifft, gadewch i ni ddechrau chwilio am yr enw “P. B. Shelly” o dan gell C6 .

Llinell y cod fydd:

Set cell = Range("C4:C13").Find("P. B. Shelly", After:=Range("C6"))

A'r cod VBA cyflawn fydd:

Cod VBA:

8216

0> Allbwn:

Bydd yn dychwelyd $C$13 oherwydd ei fod yn dechrau chwilio o islaw cell C6 , mae hynny o gell C7 . Felly mae'n cael P. B. Shelly yn y gell C13 yn gyntaf.

Darllenwch fwy: Sut i Dod o Hyd i Llinyn mewn a Cell Gan Ddefnyddio VBA yn Excel

3. Rhedeg y Swyddogaeth Darganfod yn VBA gyda Lapio o amgylch y Paramedr Ar ôl (I Chwilio am Werth mewn Ffordd Gylchol)

Y paramedr Ar ôl gyda'r swyddogaeth Dod o hyd i yn chwilio am werth mewn ffordd gylchol

Hynny yw, mae'n dechrau chwilio o dan gell o fewn amrediad, yn gorffen chwilio yn yr amrediad, ac yna'n dechrau eto o frig yr amrediad.

0>Er enghraifft, gadewch i ni ddechrau chwilio'r enw "John Keats"o dan gell C8gan ddefnyddio'r paramedr Ar ôl.

Y llinell o cod fydd:

Set cell = Range("C4:C13").Find("John Keats", After:=Range("C8"))

A'rcwblhau cod VBA fydd:

Cod VBA:

8984

Allbwn:

Bydd yn dychwelyd $C$7 oherwydd ei fod yn dechrau chwilio o islaw cell C8 , hynny o cell C9 .

Nid yw'n dod o hyd i unrhyw beth hyd at gell C13 , felly mae'n dechrau eto o gell C4 ac yn dod o hyd i un yn y gell C7 .

Darlleniadau Tebyg:

  • Sut i Dod o Hyd i Llinyn gyda VBA yn Excel (8 Enghreifftiau)
  • Dod o Hyd i'r Union Baru gan Ddefnyddio VBA yn Excel (5 Ffordd)
  • Sut i Ddarganfod ac Amnewid Gan Ddefnyddio VBA (11 Ffyrdd)

4. Defnyddiwch y Swyddogaeth Darganfod yn VBA gyda'r Paramedr LookAt (Ar gyfer Cyfateb Union neu Rannol)

Gallwch ddefnyddio'r Fod swyddogaeth yn VBA gyda'r >Edrychwch paramedr.

Defnyddiwch LookAt = xlWhole ar gyfer gêm Union , a LookAt=xlPart ar gyfer Ranol cyfateb.

Er enghraifft, gadewch i ni geisio darganfod a oes unrhyw lyfr gyda'r enw "Ode" yn y golofn Enw'r Llyfr ( B4:B13 ).

Os defnyddiwn xlCyfan yn llinell y cod:

Set cell = Range("B4:B13").Find("Ode", LookAt:=xlWhole)

Bydd yr allbwn yn dangos gwall oherwydd ni fydd yn dod o hyd i unrhyw union cyfateb.

Ond os ydych yn defnyddio:

<7 Set cell = Range("B4:B13").Find("Ode", LookAt:=xlPart)

Yna bydd yn dychwelyd $B$9 , oherwydd mae llyfr gyda'r enw "Ode" ynddo yn y gell B7 , Awdl i'r Eos.

Felly cod cyflawn y gêm rhannol yw:

Cod VBA:

1440

5. Gweithredwch y Swyddogaeth Darganfod yn VBA gyda Pharamedr SearchDirection (I Nodi Cyfeiriad y Chwiliad)

Gallwch hefyd ddefnyddio'r swyddogaeth Find yn VBA gyda'r SearchDirection paramedr.

Defnyddiwch SearchDirection = xlNesaf i chwilio o Top i'r Gwaelod .

A SearchDirection = xlCynt ar gyfer chwilio o Gwaelod i Ben .

Er enghraifft, gadewch i ni geisio dod o hyd i'r Awdur Elif Shafak yn y golofn Awdur ( C4:C13 ).

Os defnyddiwn xlNesaf yn llinell y cod:

Set cell = Range("C4:C13").Find("Elif Shafak", SearchDirection:=xlNext)

Yna bydd yn dychwelyd $C$5 .

Ond os ydych yn defnyddio:

Set cell = Range("C4:C13").Find("Elif Shafak", SearchDirection:=xlPrevious)

Yna bydd yn dychwelyd $C$11 .

Felly cod cyflawn ar gyfer chwilio o gwaelod i'r brig yw:

Cod VBA:

2971

6. Dod o hyd i Swyddogaeth yn VBA gyda Pharamedr MatchCase (Ar gyfer Paru sy'n Sensitif i Achos neu Ansensitif)

Yn olaf, gallwch ddefnyddio'r swyddogaeth Find gyda'r paramedr MatchCase .

Defnyddiwch MatchCase=Gwir ar gyfer gêm sy'n sensitif i achos , a MatchCase=Anghywir ar gyfer cyfatebiaeth cas-ansensitif.

Er enghraifft, gadewch i ni geisio dod o hyd i'r llyfr "mam" yn y golofn Enw'r Llyfr ( B4:B13 ).

Os defnyddiwn Gwir yn llinell y cod:

Set cell = Range("B4:B13").Find("mother", MatchCase:=True)

Bydd yr allbwn yn dangos gwall oherwydd bydd yn' t ddod o hyd i unrhywcyfateb.

Ond os ydych yn defnyddio:

Set cell = Range("B4:B13").Find("mother", MatchCase:=False)

Yna bydd yn dychwelyd $ B$9 oherwydd bod llyfr o'r enw “Mam” yn y gell B8 .

Felly cod cyflawn ar gyfer y cyfatebiad cas-ansensitif yw:

Cod VBA:

1587

<4 Casgliad

Gan ddefnyddio'r dulliau hyn, gallwch ddefnyddio'r Swyddogaeth Darganfod mewn Cymhwysiad Sylfaenol Gweledol. Oes gennych chi unrhyw gwestiynau? Mae croeso i chi ofyn i ni.

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.