Hvordan finne eksakt samsvar ved hjelp av VBA i Excel (5 måter)

  • Dele Denne
Hugh West

Hvis du leter etter noen av de enkleste måtene å finne et eksakt samsvar ved å bruke VBA , vil du finne denne artikkelen nyttig. Så la oss komme i gang med artikkelen og bli kjent med måtene å finne en eksakt match på.

Last ned arbeidsbok

VBA Finn eksakt match.xlsm

5 måter å finne eksakt samsvar ved å bruke VBA

Jeg har brukt følgende tabell som viser resultatene til noen elever. Jeg vil forklare forskjellige måter å finne den eksakte matchingen ved å bruke denne tabellen ved hjelp av VBA.

For dette formålet har jeg brukt Microsoft Excel 365-versjonen, du kan bruke alle andre versjoner i henhold til din bekvemmelighet.

Metode-1: Finne eksakt samsvar i et celleområde

Hvis du vil finne et eksakt samsvar med en streng som f.eks. navnet på en elev og deretter finne celleposisjonen til denne eleven, så kan du gjøre dette ved å følge denne metoden.

Her skal jeg finne et eksakt samsvar for studenten som heter “Joseph Micahel” .

Trinn-01 :

➤Gå til Utvikler Tab>> Visual Basic Alternativ

Deretter åpnes Visual Basic Editor .

➤Gå til Sett inn Tab>> Modul Alternativ

Deretter vil en Modul bli opprettet.

Trinn-02 :

➤Skriv følgende kode

9161

Her, “eksakt samsvar” er arknavnet og “B5:B10” errekkevidde av elevenes navn, og “Joseph Michael” er elevens navn som skal finnes ut.

rng er deklarert som et rekkeviddeobjekt og str som en strengvariabel for å lagre adressen til det søkte elementet.

IF -setningen vil tilordne elementets adresse til str variabelen.

➤Trykk F5

Resultat :

Etter det vil du få følgende Meldingsboks som inneholder celleposisjonen til eleven ved navn “Joseph Michael” .

Les mer: Finn innenfor et område med VBA i Excel: Inkludert eksakte og delvise samsvar

Metode-2: Finne nøyaktig samsvar og erstatte det ved å bruke VBA

Jeg vil vise måte å finne den angitte elevens navn og deretter erstatte det med et annet navn fordi dette navnet på en eller annen måte feilaktig har blitt skrevet her. Du kan finne ønsket streng og erstatte den ved å følge denne metoden.

Trinn-01 :

➤Følg Trinn-01 av Metode-1

1368

Her er «finn og erstatt» arknavnet og “B5:B10” er rekkevidden av elevenes navn, og “Donald Paul” er elevens navn som skal finne ut, og deretter vil “Henry Jackson” være elevens navn i stedet for det forrige.

WITH utsagnet vil unngå repetisjon av kodebiten i hver utsagn.

IF uttalelse vil tildeleelementets adresse til str variabelen og DO løkken vil erstatte alle forekomster av søkeordet.

➤Trykk F5

Resultat :

Etter det vil du få den nye studentens navn som «Henry Jackson» .

Metode-3: Finne eksakt samsvar med store og små bokstaver

Hvis du vil finne et samsvar mellom store og små bokstaver, følg denne metoden. Her har jeg to navn som ligner på hverandre, men det er en forskjell i saken, og avhengig av tilfelle vil jeg erstatte den siste elevens navn.

Trinn -01 :

➤Følg Trinn-01 av Metode-1

9748

Her, «skiller mellom store og små bokstaver» er arknavnet og “B5:B10” er rekkevidden av elevenes navn, og “Donald Paul” er elevens navn som skal finnes ut, og da vil “Henry Jackson” være elevens navn i stedet for det forrige.

MED utsagn vil unngå repetisjon av kodebiten i hver utsagn.

IF -setningen vil tilordne elementets adresse til str -variabelen og DO -løkken vil erstatte alle forekomster av søkeordet.

➤Trykk F5

Resultat :

Nå, ifølge saken, elevens navn vil bli endret til “Henry Jackson” .

Lignende lesninger:

  • Hvordan finne streng i en celle ved hjelp av VBA i Excel (2 metoder)
  • VBAFinn i kolonne i Excel (7 tilnærminger)
  • Hvordan finne streng med VBA i Excel (8 eksempler)

Metode-4: Bruke InStr-funksjon

Anta at du vil matche Bestått eller Ikke korresponderer til navnene på elevene avhengig av Resultatkolonnen hvor Bestått eller Ikke bestått er skrevet. For å finne denne strengen i Resultatkolonnen og skrive ned «Bestått» i Statuskolonnen for elevene som har bestått eksamen, kan du bruke InStr-funksjonen .

Trinn-01 :

➤Følg Trinn-01 av Metode-1

5373

Her er celleområdet C5:C10 som er Resultatkolonnen

InStr(celleverdi, "Pass") > 0 er betingelsen der tallet er større enn null (når cellen inneholder «Pass» )  vil følgende linje fortsette og gi utdata i den tilstøtende cellen som Bestått .

Hvis betingelsen blir usann betyr at en celle ikke inneholder noen “Pass” , vil linjen under ELSE utføres og gi utdataverdien i tilstøtende celle som Blank .

Denne sløyfen vil fortsette for hver celle.

➤Trykk F5

Resultat :

Deretter vil du få statusen «Bestått» for studentene som har bestått.

Metode-5: Finne eksakt samsvar og trekke ut data

Hvis du vil trekke uttilsvarende data for en student ved navn “Michael James” så kan du følge denne metoden.

Trinn-01 :

➤Følg Trinn-01 av Metode-1

3222

Her har jeg brukt B100 som Aktiv Sheet Range (du kan bruke et hvilket som helst område i henhold til din bruk).

InStr(1, Range(“B” & i), “Michael James”) > 0 er betingelsen for å sjekke om cellen i kolonne B inneholder Michael James .

Range(“E ” & icount & “:G” & icount) er området der du vil ha utdataene dine og Range(“B” & i & “:D” & i).verdi gir verdiene fra kolonnen B til D .

➤Trykk F5

Resultat :

Etterpå vil du få følgende uttrukket data for elevene som har navnet Michael James .

Øvingsseksjon

For å øve selv har vi gitt en Øvingsseksjon som nedenfor i et ark kalt Practice . Vennligst gjør det selv.

Konklusjon

I denne artikkelen prøvde jeg å dekke de enkleste måtene å finne en eksakt match ved å bruke VBA effektivt i Excel. Håper du finner det nyttig. Hvis du har forslag eller spørsmål, del dem gjerne med oss.

Hugh West er en svært erfaren Excel-trener og analytiker med over 10 års erfaring i bransjen. Han har en bachelorgrad i regnskap og finans og en mastergrad i bedriftsøkonomi. Hugh har en lidenskap for undervisning og har utviklet en unik undervisningstilnærming som er enkel å følge og forstå. Hans ekspertkunnskap om Excel har hjulpet tusenvis av studenter og fagfolk over hele verden med å forbedre sine ferdigheter og utmerke seg i karrieren. Gjennom bloggen sin deler Hugh sin kunnskap med verden, og tilbyr gratis Excel-opplæringer og nettbasert opplæring for å hjelpe enkeltpersoner og bedrifter å nå sitt fulle potensial.