Leren hoe om te zoeken tekst met Excel's programmeertaal, VBA of Visual Basic for Applications, is handig voor het opzoeken van specifieke informatie snel in grote, logge werkbladen; Gebruik bijvoorbeeld de functie van de tekst zoeken om snel te vinden specifieke adressen, namen en telefoonnummers in een mailing list. Toegang tot VBA uit het Excel Developer-tabblad. Als dit tabblad niet wordt weergegeven, moet u wellicht controleren opties van het Excel om te zetten op het display.
Een gemakkelijke manier om te begrijpen hoe tekst met VBA zoeken is door het gebruik van Excel macrorecorder voor het maken van VBA-instructies met behulp van de opdracht zoeken van het tabblad Start. Typ wat tekst in een cel van een werkblad, zoals "abc", en klik op een andere cel. Klik op het tabblad Ontwikkelaars Record en druk op de toetsen Ctrl-F om gelijktijdig weer te geven van het dialoogvenster Zoeken van het programma. Typ enkele tekens van de tekst die u in de cel hebt getypt. Vinden om te navigeren naar de cel, klik op de knop opname stoppen op het tabblad Ontwikkelaars aan het einde van de macro-opname.
Nadat u een VBA-macro voor het vinden van de tekst hebt opgenomen, beginnen te begrijpen hoe het werkt door het lezen van haar programmering verklaringen. De lijst met macro's in uw huidige werkmap weergeven door te klikken op het tabblad ontwikkelaars de macro's knop en vervolgens te klikken op de naam van uw macro tekst-zoeken. Bijvoorbeeld TextFinder als dat is de naam van uw macro, klik op de knop bewerken om de verklaringen van de VBA-programmering voor TextFinder weer te geven.
VBA-zoekt naar tekst in de cellen van het huidige werkblad met de zoekfunctie, die deel van de Cells-collectie uitmaakt. Deze collectie vertegenwoordigt de cellen in het huidige werkblad. Kunt u een goed begrip van de argumenten van deze functie moet door het onderzoek van de verklaringen van een macro die tekst zoekt. Als u een macro die tot doel de tekst "abc heeft" hebt geregistreerd, uw macro zal ongeveer als volgt uit:
Sub FindText()
Cells.Find(What:="abc", After:=ActiveCell, LookIn:=xlFormulas, LookAt:= _ xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext, MatchCase:=False _ , SearchFormat:=False).Activate
End Sub
Het argument van de VBA-opdracht zoeken die zoekt naar tekst, houdt de tekst die u wilt zoeken. Excel zoekt elke tekst die u voor dit argument opgeeft. "What" is het enige argument dat het "Vinden" commando vereist. Alle andere argumenten zijn optioneel. U kunt daarom zoeken naar de tekst "abc", bijvoorbeeld met de instructie "Cells.Find (wat: ="abc") .activate. Als u nodig hebt "zoeken" aan een specifiek geval voor het "Wat" tekst, blijkt dat door het argument "MatchCase" op "True". Dit argument is "False" standaard.
De opdracht Find voor het zoeken van tekst met VBA navigeren niet automatisch naar alle cellen met de tekst die u zoekt. Om het te maken doen, gebruikt u de methode Activate van de resulterende waarde van zoeken. Die terugkeer waarde is een Range-object dat de cellen in die zoeken de tekst gevonden u zochten voorstelt. Bijvoorbeeld, als u hebt gezocht voor "abc" met zoeken, en slechts één cel had die tekst, zou de retourwaarde uit Zoek een eencellige bereik. Uitvoeren van die cel activeren functie zal maken die de actieve cel.