Excel VBA-zoekfunctie

Wie kent de FIND-methode niet in Excel? Ik weet zeker dat iedereen weet wie met Excel-werkbladen te maken heeft. FIND of populaire sneltoets Ctrl + F vindt het woord of de inhoud waarnaar u zoekt in het hele werkblad en in de hele werkmap. Als je zegt zoeken betekent dat je in cellen of bereiken vindt, is het niet? Ja, de juiste zoekmethode maakt deel uit van de cellen of bereiken in Excel en in VBA.

Evenzo hebben we in VBA Find een optie met de naam FIND-functie die ons kan helpen de waarde te vinden waarnaar we op zoek zijn. In dit artikel zal ik je door de methodologie van FIND in VBA leiden.

Formule om functie te vinden in Excel VBA

In het standaard Excel-werkblad typen we eenvoudig de sneltoets Ctrl + F om de inhoud te vinden. Maar in VBA moeten we een functie schrijven om de inhoud te vinden waarnaar we op zoek zijn. Oké, laten we dan eens kijken naar de FIND-syntaxis.

Ik weet wat er in je hoofd omgaat, je bent verloren door naar deze syntaxis te kijken en je begrijpt niets. Maar niets om je zorgen over te maken voordat ik je de syntaxis uitleg, laat me je voorstellen aan het reguliere zoekvak.

Als je observeert wat er in reguliere Ctrl + F is, is alles ook in VBA Find syntax. Bekijk nu wat elk syntaxiswoord zegt.

Wat: gewoon wat u zoekt. Hier moeten we de inhoud vermelden waarnaar we op zoek zijn.

Na: Na naar welke cel u wilt zoeken.

LookIn: Waar te zoeken naar wat u zoekt Bijvoorbeeld formules, waarden of opmerkingen. Parameters zijn xlFormulas, xlValues, xlComments.

LookAt: Of u nu op zoek bent naar de hele inhoud of alleen naar een deel van de inhoud. Parameters zijn xlWhole, xlPart.

SearchOrder: zoekt u in rijen of kolommen. xlByRows of xlByColumns.

SearchDirection: kijkt u naar de volgende cel of vorige cel. xlNext, xlVorige.

MatchCase: de inhoud waarnaar u zoekt, is hoofdlettergevoelig of niet. Waar of niet waar.

MatchByte: dit is alleen voor double-byte talen. Waar of niet waar.

SearchFormat: zoekt u door opmaak. Als u naar formaat zoekt, moet u de methode Application.FindFormat gebruiken.

Dit is de uitleg van de syntaxis van de VBA FIND-methode. Afgezien van de eerste parameter is alles optioneel. In de voorbeeldensectie zullen we zien hoe deze FIND-methode te gebruiken bij VBA-codering.

Hoe de Excel VBA-zoekfunctie te gebruiken?

We zullen leren hoe een VBA Find Excel-functie te gebruiken met enkele voorbeelden.

U kunt deze VBA Find Excel Template hier downloaden - VBA Find Excel Template

VBA-zoekfunctie - Voorbeeld # 1

Laat me eerst een eenvoudig voorbeeld van het gebruik van de eigenschap FIND uitleggen en de inhoud vinden waarnaar we op zoek zijn. Stel dat hieronder de gegevens staan ​​die u in uw Excel-blad hebt.

Stap 1: Hieruit wil ik de naam John vinden, laten we een Visual Basic openen en de codering starten.

Code:

 Sub Find_Ex1 () Einde Sub 

Stap 2: Hier kunt u het woord FIND niet starten, omdat FIND onderdeel is van de eigenschap RANGE. Dus, eerst moeten we vermelden waar we naar kijken, dwz Range.

Stap 3: Vermeld dus eerst het bereik waarnaar we op zoek zijn. In ons voorbeeld is ons bereik van B2 tot B11.

Code:

 Sub Find_Ex1 () Bereik ("B2: B11") Einde Sub 

Stap 4: Zet na het vermelden van het bereik een punt (.) En typ FIND. U moet de eigenschap FIND zien.

Stap 5: Selecteer de eigenschap FIND en open de haak.

Stap 6: Ons eerste argument is waar we naar op zoek zijn. Om het argument te benadrukken kunnen we het argument als volgt doorgeven What: =, dit zou nuttig zijn om te identificeren naar welke parameter we verwijzen.

Code:

 Sub Find_Ex1 () Bereik ("B2: B11"). Find (What: = "John") End Sub 

Stap 7: Het laatste deel is na het vinden van het woord wat we willen doen. We moeten het woord selecteren, dus geef het argument door als. Selecteer .

Code:

 Sub Find_Ex1 () Bereik ("B2: B11"). Find (What: = "John"). Selecteer End Sub 

Stap 8: Voer deze code vervolgens uit met de F5-toets of handmatig zoals weergegeven in de afbeelding, zodat het het eerste gevonden woord Johnson zou selecteren dat een woord bevat, John.

VBA-zoekfunctie - Voorbeeld # 2

Nu zal ik je laten zien hoe je het commentaarwoord kunt vinden met de zoekmethode. Ik heb gegevens en in drie cellen heb ik een opmerking.

In die cellen met een rode vlag staan ​​opmerkingen. Uit deze opmerking wil ik het woord 'Geen commissie' zoeken.

Stap 1: Start code met vermelding van het bereik ("D2: D11") en plaats een punt (.) En typ Zoeken

Code:

 Sub Find_Ex2 () Bereik ("D2: D11"). Find (End Sub 

Stap 2: Typ in het WHAT- argument het woord "Geen commissie".

Code:

 Sub Find_Ex2 () Bereik ("D2: D11"). Find (What: = "No Commission", End Sub 

Stap 3: Negeer het gedeelte Na en selecteer het gedeelte LookIn. In het gedeelte LookIn zoeken we dit woord in opmerkingen, dus selecteer xlComments en geef het argument door als .Select

Code:

 Sub Find_Ex2 () Bereik ("D2: D11"). Find (What: = "Geen commissie", LookIn: = xlComments). Selecteer End Sub 

Stap 4: Voer deze code nu uit met behulp van de F5-toets of handmatig, zoals weergegeven in de afbeelding, zodat deze de cel selecteert met de opmerking "Geen commissie". In cel D9 hebben we een genoemde opmerking.

Omgaan met foutwaarden in Excel VBA Find

Als het woord waarnaar we zoeken niet in het bereik voorkomt, hebben we VBA-code opgegeven die een fout als deze retourneert.

Om de gebruiker te laten zien dat de waarde waarnaar u zoekt niet beschikbaar is, hebben we de onderstaande code nodig.

Als de bovenstaande code waarde heeft gevonden, wordt de waarde en het celadres weergegeven of wordt het bericht weergegeven als " De waarde waarnaar u zoekt, is niet beschikbaar in het opgegeven bereik !!!".

Dingen om te onthouden

  • VBA FIND is onderdeel van de RANGE-eigenschap en u moet de FIND gebruiken nadat u alleen het bereik hebt geselecteerd.
  • In FIND is de eerste parameter verplicht (wat), verder is al het andere optioneel.
  • Als u de waarde na een specifieke cel wilt vinden, kunt u de cel vermelden in de parameter Na van de syntaxis Zoeken.

Aanbevolen artikelen

Dit is een handleiding voor VBA Find Function geweest. Hier hebben we VBA Find besproken en het gebruik van Excel VBA Find Function samen met enkele praktische voorbeelden en een downloadbare Excel-sjabloon. U kunt ook onze andere voorgestelde artikelen doornemen -

  1. ZOEK Functie in Excel
  2. VBA-functie in Excel
  3. Handleiding voor bereik in Excel
  4. Hoe de VBA VLOOKUP-functie te gebruiken?

Categorie: