Excel VBA Find-funktion

Vem känner inte FIND-metoden i Excel? Jag är säker på att alla vet vem som har att göra med Excel-kalkylblad. HITT eller den populära genvägstangenten Ctrl + F hittar ordet eller innehållet du söker efter i hela kalkylbladet och i hela arbetsboken. När du säger hitta betyder att du hittar i celler eller intervall är det inte? Ja, den korrekta sökmetoden är en del av cellerna eller intervall i både excel och i VBA.

På VBA Find har vi också ett alternativ som heter FIND-funktion som kan hjälpa oss att hitta det värde vi söker efter. I den här artikeln tar jag dig igenom metoden för FIND i VBA.

Formel för att hitta funktion i Excel VBA

I vanligt Excel-kalkylblad skriver vi helt enkelt kortkommandot Ctrl + F för att hitta innehållet. Men i VBA måste vi skriva en funktion för att hitta det innehåll vi letar efter. OK, låt oss titta på FINN-syntaxen då.

Jag vet vad som händer i ditt sinne, du går förlorad genom att titta på denna syntax och du förstår ingenting. Men ingenting att oroa mig innan jag förklarar syntaxen, låt mig introducera dig till den vanliga sökrutan.

Om du observerar vad som finns i vanlig Ctrl + F, finns allt också i VBA Find syntax. Titta nu på vad varje ord i syntax säger om.

Vad: Helt enkelt det du söker efter. Här måste vi nämna innehållet vi söker efter.

Efter: Efter vilken cell du vill söka efter.

LookIn: Var ska du leta efter det du söker till exempel formler, värden eller kommentarer. Parametrar är xlFormules, xlValues, xlComments.

LookAt: Oavsett om du söker efter hela innehållet eller bara den del av innehållet. Parametrar är xlWhole, xlPart.

SearchOrder: Ser du i rader eller kolumner. xlByRows eller xlByColumns.

SearchDirection: Ser du på nästa cell eller föregående cell. xlNästa, xlFöre.

MatchCase: Innehållet du söker efter är skiftlägeskänsligt eller inte. Sant eller falskt.

MatchByte: Detta är endast för språk med dubbla byte. Sant eller falskt.

SearchFormat: Söker du efter formatering. Om du söker efter format måste du använda Application.FindFormat- metoden.

Detta är förklaringen till syntaxen för VBA FIND-metoden. Bortsett från den första parametern är allt valfritt. I exempelavsnittet ser vi hur man använder denna FIND-metod i VBA-kodning.

Hur använder jag Excel VBA Find-funktion?

Vi kommer att lära dig att använda en VBA Find Excel-funktion med några exempel.

Du kan ladda ner denna VBA Hitta Excel-mall här - VBA Hitta Excel-mall

VBA Find-funktion - Exempel # 1

Först upp, låt mig förklara ett enkelt exempel på att använda FIND-egendom och hitta det innehåll vi letar efter. Antag att nedan är de data du har i ditt excelblad.

Steg 1: Från detta vill jag hitta namnet John, låt oss öppna Visual Basic och starta kodningen.

Koda:

 Sub Find_Ex1 () Slut Sub 

Steg 2: Här kan du inte starta ordet FIND, eftersom FIND är en del av egenskapen RANGE. Så för det första måste vi nämna var vi letar dvs Range.

Steg 3: Så nämn först först det intervall vi letar efter. I vårt exempel är vårt sortiment från B2 till B11.

Koda:

 Sub Find_Ex1 () Range ("B2: B11") End Sub 

Steg 4: Efter att ha nämnt intervallet sätta en punkt (.) Och skriv FIND. Du måste se FIND-egendom.

Steg 5: Välj FINN-egenskapen och öppna fästet.

Steg 6: Vårt första argument är vad vi söker efter. För att markera argumentet kan vi skicka argumentet så här. Vad: =, detta skulle vara till hjälp för att identifiera vilken parameter vi refererar till.

Koda:

 Sub Find_Ex1 () Range ("B2: B11"). Hitta (What: = "John") End Sub 

Steg 7: Den sista delen är efter att ha hittat ordet vad vi vill göra. Vi måste välja ordet, så skicka argumentet som. Välj .

Koda:

 Sub Find_Ex1 () Range ("B2: B11"). Hitta (What: = "John"). Välj Slut Sub 

Steg 8: Kör sedan denna kod med F5-tangenten eller manuellt som visas i figuren, så det skulle välja det första hittade ordet Johnson som innehåller ett ord, John.

VBA Find-funktion - Exempel # 2

Nu ska jag visa dig hur du hittar kommentarordet med sökmetoden. Jag har data och i tre celler har jag en kommentar.

De celler som har röd flagga har kommentarer i den. Från denna kommentar vill jag söka ordet "Ingen kommission".

Steg 1: Starta koden med att nämna intervallet (“D2: D11”) och sätt en punkt (.) Och skriv in Sök

Koda:

 Sub Find_Ex2 () Range ("D2: D11"). Hitta (End Sub 

Steg 2: Skriv in ordet "Ingen kommission" i WHAT- argumentet.

Koda:

 Sub Find_Ex2 () Range ("D2: D11"). Hitta (What: = "No Commission", End Sub 

Steg 3: Ignorera After-delen och välj LookIn-delen. I LookIn-delen söker vi efter detta ord i kommentarer så välj xlComments och skicka sedan argumentet som .Välj

Koda:

 Sub Find_Ex2 () Range ("D2: D11"). Hitta (What: = "No Commission", LookIn: = xlComments) .Välj End Sub 

Steg 4: Kör nu den här koden med F5-tangenten eller manuellt som visas i figuren så att den väljer den cell som har kommentaren "Ingen kommission". I D9-cellen har vi en nämnd kommentar.

Hantera felvärden i Excel VBA Find

Om det ord vi söker inte finns i det intervall vi har levererat VBA-kod som kommer att returnera ett fel som det här.

För att visa användaren att värdet du söker inte är tillgängligt behöver vi koden nedan.

Om ovanstående kod hittades värde, visar det värdet & celladressen, annars kommer meddelandet att visas som " Det värde du söker efter är inte tillgängligt i det medföljande intervallet !!!".

Saker att komma ihåg

  • VBA FIND är en del av egenskapen RANGE och du måste använda FIND efter att du bara har valt området.
  • I FIND är första parametern obligatorisk (Vad) bortsett från detta är allt annat valfritt.
  • Om du hittar värdet efter specifik cell kan du nämna cellen i parametern After i Find syntax.

Rekommenderade artiklar

Detta har varit en guide till VBA Find-funktion. Här diskuterade vi VBA Find och hur man använder Excel VBA Find-funktion tillsammans med några praktiska exempel och nedladdningsbara Excel-mall. Du kan också gå igenom våra andra föreslagna artiklar -

  1. HITT-funktion i Excel
  2. VBA-funktion i Excel
  3. Guide till intervall i Excel
  4. Hur använder jag VBA VLOOKUP-funktion?

Kategori: