Innholdsfortegnelse
Opplæringen viser hvordan du bruker VLOOKUP-formel i Excel for å sammenligne to kolonner for å returnere vanlige verdier (treff) eller finne manglende data (forskjeller).
Når du har data i to forskjellige lister, kan det hende du må sammenligne dem for å se hvilken informasjon som mangler i en av listene eller hvilke data som finnes i begge. Sammenligning kan gjøres på mange forskjellige måter - hvilken metode du skal bruke avhenger av nøyaktig hva du ønsker fra den.
Hvordan sammenligne to kolonner i Excel ved hjelp av VLOOKUP
Når du har to kolonner med data og ønsker å finne ut hvilke datapunkter fra den ene listen som finnes i den andre listen, kan du bruke funksjonen VLOOKUP for å sammenligne listene for vanlige verdier.
For å bygge en VLOOKUP-formel i sin grunnleggende form, dette er hva du må gjøre:
- For oppslagsverdi (1. argument), bruk den øverste cellen fra liste 1.
- For tabellmatrise (2. argument), oppgi hele Liste 2.
- For col_index_num (3. argument), bruk 1 siden det bare er én kolonne i matrisen.
- For range_lookup (fjerde argument), sett FALSE - eksakt samsvar.
Anta at du har navnene på deltakerne i kolonne A (liste 1) og navnene på disse som har gått gjennom kvalifiseringsrundene i kolonne B (liste 2). Du ønsker å sammenligne disse 2 listene for å finne ut hvilke deltakere fra gruppe A som tok seg til hovedarrangementet. For å gjøre dette, bruk følgendeformel.
=VLOOKUP(A2, $C$2:$C$9, 1, FALSE)
Formelen går til celle E2, og deretter drar du den ned gjennom så mange celler som det er elementer i liste 1.
Vær oppmerksom på at tabellmatrise er låst med absolutte referanser ($C$2:$C$9) slik at den forblir konstant når du kopierer formelen til cellene nedenfor.
Som du kan se, er navnene på kvalifiserte idrettsutøvere dukker opp i kolonne E. For de gjenværende deltakerne vises en #N/A-feil som indikerer at navnene deres ikke er tilgjengelige i liste 2.
Disguise #N/ A errors
VLOOKUP-formelen diskutert ovenfor oppfyller perfekt hovedmålet - returnerer vanlige verdier og identifiserer manglende datapunkter. Den leverer imidlertid en haug med #N/A-feil, som kan forvirre uerfarne brukere og få dem til å tro at noe er galt med formelen.
For å erstatte feil med blanke celler , bruk VLOOKUP i kombinasjon med IFNA- eller IFERROR-funksjonen på denne måten:
=IFNA(VLOOKUP(A2, $C$2:$C$9, 1, FALSE), "")
Vår forbedrede formel returnerer en tom streng ("") i stedet for #N/ EN. Du kan også returnere din egendefinerte tekst som "Ikke i liste 2", "Ikke til stede" eller "Ikke tilgjengelig". For eksempel:
=IFNA(VLOOKUP(A2, $C$2:$C$9, 1, FALSE), "Not in List 2")
Dette er den grunnleggende VLOOKUP-formelen for å sammenligne to kolonner i Excel. Avhengig av din spesifikke oppgave, kan den endres som vist i ytterligere eksempler.
Sammenlign to kolonner i forskjellige Excel-ark ved å bruke VLOOKUP
I det virkelige liv vil kolonnene dubehov for å sammenligne er ikke alltid på samme ark. I et lite datasett kan du prøve å oppdage forskjellene manuelt ved å se to ark side ved side.
For å søke i et annet regneark eller arbeidsbok med formler, må du bruke ekstern referanse. Den beste praksisen er å begynne å skrive formelen i hovedarket ditt, deretter bytte til det andre regnearket og velge listen med musen - en passende områdereferanse vil automatisk bli lagt til formelen.
Forutsatt at liste 1 er i kolonne A på Ark1 og liste 2 er i kolonne A på Ark2 , kan du sammenligne to kolonner og finne treff ved å bruke denne formelen:
=IFNA(VLOOKUP(A2, Sheet2!$A$2:$A$9, 1, FALSE), "")
For mer informasjon, vennligst se:
- VLOOKUP fra et annet ark
- VLOOKUP fra en annen arbeidsbok
Sammenlign to kolonner og returner vanlige verdier (treffer)
I de forrige eksemplene diskuterte vi en VLOOKUP-formel i sin enkleste form:
=IFNA(VLOOKUP(A2, $C$2:$C$9, 1, FALSE), "")
Resultatet av den formelen er en liste over verdier som finnes i både kolonner og tomme celler i stedet for verdiene som ikke er tilgjengelige i den andre kolonnen.
For å få en liste over vanlige verdier uten hull, legg til automatisk filter i den resulterende kolonnen og filtrer ut tomme felter.
I Excel for Microsoft 365 og Excel 2021 er det oppporter dynamiske arrays, kan du bruke FILTER-funksjonen for å sile ut blanks dynamisk. For dette, bruk IFNA VLOOKUP-formelen somkriterier for FILTER:
=FILTER(A2:A14, IFNA(VLOOKUP(A2:A14, C2:C9, 1, FALSE), "")"")
Vær oppmerksom på at i dette tilfellet leverer vi hele Liste 1 (A2:A14) til lookup_value -argumentet til VLOOKUP. Funksjonen sammenligner hver av oppslagsverdiene mot liste 2 (C2:C9) og returnerer en rekke treff og #N/A-feil som representerer manglende verdier. IFNA-funksjonen erstatter feil med tomme strenger og leverer resultatene til FILTER-funksjonen, som filtrerer ut tomme felt ("") og sender ut en rekke treff som sluttresultat.
Alternativt kan du bruke ISNA-funksjonen til å sjekke resultatet av VLOOKUP og filtrere elementene som evalueres til FALSE, dvs. andre verdier enn #N/A-feil:
=FILTER(A2:A14, ISNA(VLOOKUP(A2:A14, C2:C9, 1, FALSE))=FALSE)
Det samme resultatet kan oppnås med XLOOKUP-funksjonen, som gjør formelen enda enklere. På grunn av XLOOKUPs evne til å håndtere #N/A-feil internt (valgfritt if_not_found -argument), kan vi klare oss uten IFNA- eller ISNA-innpakningen:
=FILTER(A2:A14, XLOOKUP(A2:A14, C2:C9, C2:C9,"")"")
Sammenlign to kolonner og finn manglende verdier (forskjeller)
For å sammenligne 2 kolonner i Excel for å finne forskjeller, kan du fortsette på denne måten:
- Skriv kjerneformelen for å søke etter den første verdi fra liste 1 (A2) i liste 2 ($C$2:$C$9):
VLOOKUP(A2, $C$2:$C$9, 1, FALSE)
- Nest the formelen ovenfor i ISNA-funksjonen for å sjekke VLOOKUPs utdata for #N/A-feil. I tilfelle en feil gir ISNA TRUE, ellers FALSE:
ISNA(VLOOKUP(A2,$C$2:$C$9, 1, FALSE))
- Bruk ISNA VLOOKUP-formelen for den logiske testen av HVIS-funksjonen. Hvis testen evalueres til TRUE (#N/A feil), returner en verdi fra liste 1 i samme rad. Hvis testen evalueres til FALSE (en samsvar i liste 2 er funnet), returner en tom streng.
Den komplette formelen har denne formen:
=IF(ISNA(VLOOKUP(A2, $C$2:$C$9, 1, FALSE)), A2, "")
For å bli kvitt de tomme feltene, bruk Excels filter som vist i eksemplet ovenfor.
I Excel 365 og Excel 2021 kan du filtrere resultatlisten dynamisk. For dette, plasser ganske enkelt ISNA VLOOKUP-formelen i inkluder -argumentet til FILTER-funksjonen:
=FILTER(A2:A14, ISNA(VLOOKUP(A2:A14, C2:C9, 1, FALSE)))
En annen måte er å bruk XLOOKUP for kriterier - funksjonen returnerer tomme strenger ("") for manglende datapunkter, og du filtrerer verdiene i Liste 1 som XLOOKUP returnerte tomme strenger (="") for:
=FILTER(A2:A14, XLOOKUP(A2:A14, C2:C9, C2:C9,"")="")
VLOOKUP-formel for å identifisere treff og forskjeller mellom to kolonner
Hvis du vil legge til tekstetiketter til den første listen som indikerer hvilke verdier som er tilgjengelige i den andre listen og hvilke som ikke er det, bruk VLOOKUP-formelen sammen med IF og ISNA/ISERROR funksjoner.
For å identifisere navn som er i både kolonne A og D og de som bare er i kolonne A, er formelen:
=IF(ISNA(VLOOKUP(A2, $D$2:$D$9, 1, FALSE)), "Not qualified", "Qualified")
Her fanger ISNA-funksjonen opp #N/A-feilene generert av VLOOKUP og sender det mellomresultatet til HVIS-funksjonen for at det skalreturner den spesifiserte teksten for feil og en annen tekst for vellykkede oppslag.
I dette eksempelet brukte vi "Ikke kvalifisert"/"Kvalifisert"-etiketter, som passer for eksempeldatasettet vårt. Du kan erstatte dem med "Ikke i liste 2"/"I liste 2", "Ikke tilgjengelig"/"Tilgjengelig" eller andre etiketter du finner passende.
Denne formelen er best å sette inn i en kolonne ved siden av liste 1 og kopiert gjennom så mange celler som det er elementer i listen din.
En annen måte å identifisere treff og forskjeller i 2 kolonner på er å bruke MATCH-funksjonen:
=IF(ISNA(MATCH(A2, $D$2:$D$9, 0)), "Not in List 2", "In List 2")
Sammenlign 2 kolonner og returner en verdi fra tredje
Når du arbeider med tabeller som inneholder relaterte data, kan det hende du må sammenligne to kolonner i to forskjellige tabeller og returner en samsvarende verdi fra en annen kolonne. Faktisk er det den primære bruken av VLOOKUP-funksjonen, formålet den ble designet for.
For eksempel å sammenligne navnene i kolonne A og D i de to tabellene nedenfor og returnere en tid fra kolonne E , formelen er:
=VLOOKUP(A3, $D$3:$E$10, 2, FALSE)
For å skjule #N/A-feil, bruk den velprøvde løsningen - IFNA-funksjonen:
=IFNA(VLOOKUP(A3, $D$3:$E$10, 2, FALSE), "")
I stedet for blanks kan du returnere hvilken som helst tekst du vil for manglende datapunkter - bare skriv den inn i det siste argumentet. For eksempel:
=IFNA(VLOOKUP(A3, $D$3:$E$10, 2, FALSE), "Not available")
I tillegg til VLOOKUP, kan oppgaven utføres med noen få andre oppslagsfunksjoner.
Personlig ville jeg stole på en mer fleksibel INDEXMATCH formel:
=IFNA(INDEX($E$3:$E$10, MATCH(A3, $D$3:$D$10, 0)), "")
Eller bruk den moderne etterfølgeren til VLOOKUP – XLOOKUP-funksjonen, tilgjengelig i Excel 365 og Excel 2021:
=XLOOKUP(A3, $D$3:$D$10, $E$3:$E$10, "")
Til få navnene på kvalifiserte deltakere fra gruppe A og deres resultater, filtrer ganske enkelt ut tomme celler i kolonne B:
=FILTER(A3:B15, B3:B15"")
Sammenligningsverktøy
Hvis du ofte sammenligner filer eller data i Excel, kan disse smarte verktøyene som er inkludert i Ultimate Suite spare mye tid!
Sammenlign tabeller – rask måte å finne duplikater (treff) og unike verdier (forskjeller) i alle to datasett som kolonner, lister eller tabeller.
Sammenlign to ark – finn og fremhev forskjeller mellom to regneark.
Sammenlign flere ark – finn og uthev forskjeller i flere ark samtidig .
Øvningsarbeidsbok for nedlasting
VLOOKUP i Excel for å sammenligne kolonner - eksempler (.xlsx-fil)