Nađi metod Range objekta

Anonim

U ovom ćemo članku koristiti metodu pronalaska objekta Range za označavanje ćelije koja sadrži vrijednost sličnu riječima za pretraživanje.

Sirovi podaci za ovaj primjer sastoje se od naziva tvrtke, ID zaposlenika i naziva zaposlenika. Imamo neobrađene podatke iz različitih tvrtki.

U ovom primjeru želimo pronaći i označiti ćeliju koja se podudara s određenim nazivom tvrtke u ćeliji I8.

Da biste označili ćelije s određenim nazivima tvrtki, unesite naziv tvrtke u ćeliju I8 i kliknite gumb "Pošalji". Gumbu "Pošalji" dodijeljena je makronaredba "HighlightMatchingResult".

Makronaredba “HighlightMatchingResult” označit će ćeliju koja sadrži odgovarajući naziv tvrtke sa žutom bojom.

Logično objašnjenje

U ovom primjeru stvorili smo prilagođenu funkciju “FindRange” i makronaredbu “HighlightMatchingResult”.

Prilagođena funkcija "FindRange" stvorit će raspon sa svim ćelijama koje sadrže vrijednost sličnu nazivu tvrtke koja se traži.

Makronaredba “HighlightMatchingResult” pozvat će prilagođenu funkciju i istaknuti raspon koji prilagođena funkcija vraća u žutoj boji.

Objašnjenje koda

SearchRange.Find (Što: = FindItem)

Gornji kôd koristi se za pronalaženje ćelije koja sadrži vrijednost sličnu FindItemu.

Union (FindRange, MatchingRange)

Gornji kôd koristi se za kombiniranje dva raspona u jedan raspon.

SearchRange.FindNext (MatchingRange)

Gornji kôd koristi se za pronalaženje sljedeće ćelije koja sadrži vrijednost sličnu FindItemu.

Molimo slijedite dolje za kôd

 Opcija Eksplicitna funkcija FindRange (FindItem kao varijanta, SearchRange kao raspon) kao raspon 'Deklariranje varijabli Dim MatchingRange kao raspon Dim FirstAddress As String with SearchRange' Pronalaženje raspona čija vrijednost odgovara FindItem Set MatchingRange = .Find (What: = FindItem) 'Provjera postoji li podudaranje Ako nije MatchingRange nije ništa Zatim postavite FindRange = MatchingRange 'Dobivanje adrese prvog podudarajućeg raspona FirstAddress = MatchingRange.Address Do' Unija svih raspona čija se vrijednost podudara s FindItem Set FindRange = Union (FindRange, MatchingRange) 'Finding sljedeći raspon čija se vrijednost podudara s FindItem Set MatchingRange = .FindNext (MatchingRange) Loop While MatchingRange.Address FirstAddress End If End With End Funkcija Sub HighlightMatchingResult () 'Deklariranje varijabli Dim MappingRange kao raspon Dim UserInput As String' Dobivanje vrijednosti od korisnika ćelija I8 UserInput = Raspon ("I8"). Vrijednost 'Pozivanje prilagođene funkcije FindRange Postavi MappingRange = FindRange (UserInput, ActiveSheet.C olumns ("A")) 'Označavanje raspona mapiranja žutom bojom MappingRange.Interior.Color = RGB (255, 255, 0) End Sub 

Ako vam se dopao ovaj blog, podijelite ga sa svojim prijateljima na Facebooku. Također, možete nas pratiti na Twitteru i Facebooku.

Voljeli bismo vas čuti, javite nam kako možemo poboljšati svoj rad i učiniti ga boljim za vas. Pišite nam na web stranici e -pošte