Indholdsfortegnelse
I Microsoft Excel er der et par muligheder for at VLOOKUP og returnerer flere værdier horisontalt. Selv om den VLOOKUP funktionen ikke selv kan returnere flere værdier horisontalt, vil du blive introduceret til de alternative muligheder i denne artikel med passende illustrationer.
Download arbejdsbog til øvelser
Du kan downloade den Excel-arbejdsmappe, som vi har brugt til at forberede denne artikel.
VLOOKUP til at returnere flere værdier horisontalt.xlsx2 metoder til VLOOKUP og returnering af flere værdier horisontalt
VLOOKUP funktionen leder efter en værdi i kolonnen længst til venstre i en tabel og returnerer derefter en værdi i samme række fra den angivne kolonne. Du kan ikke udtrække flere værdier ved hjælp af VLOOKUP-funktionen på én gang. Hvis du trækker outputcellen ned for at generere følgende resultater, vil du få dobbelte værdier for nogle data. Og når alt kommer til alt, vil du ikke kunne vise de udtrukne data vandret med blot VLOOKUP funktion I Excel er der to alternativer, som vi kan anvende i Excel-regnearket for at opfylde vores formål.
1. Brug af INDEX-, SMALL- og IF-funktioner til VLOOKUP og returnering af tilsvarende værdier horisontalt
På det følgende billede viser tabellen en række smartphone-modeller med deres mærkenavne. Da de er i tilfældig rækkefølge, udtrækker vi modelnavnene for et bestemt mærke og viser dem vandret i en række.
Vi ønsker f.eks. at vise modelnavne for smartphone-mærket Samsung i Række 16 .
📌 Trin 1:
➤ Den krævede formel i Celle C16 vil være:
=INDEX($C$5:$C$14, SMALL(IF($B$16=$B$5:$B$14,ROW($B$5:$B$14)-ROW($B$5)+1), COLUMN(A1)))
➤ Når du har trykket på Indtast , får du det første modelnavn på Samsung fra tabellen.
📌 Trin 2:
➤ Brug nu Håndtag til påfyldning fra Celle C16 og træk den til højre langs Række 16 indtil en #NUM fejl vises.
➤ Spring den første over #NUM fejl og stoppe den automatiske udfyldning før den celle, der indeholder fejlen.
Du vil få vist alle modelnavne på Samsung smartphones horisontalt, som er tilgængelige i den givne tabel.
🔎 Hvordan virker formlen?
- RÆKKE($B$5:$B$14)-RÆKKE($B$5)+1: Denne del tildeles det andet argument ([value_if_true]) af den IF Den definerer række-nummeret for alle data, der er tilgængelige i området af celler B5:B14 og returnerer følgende array:
{1;2;3;4;5;6;7;8;9;10}
- IF($B$16=$B$5:$B$14, ROW($B$5:$B$14)-ROW($B$5)+1): Denne del af formlen matcher kun kriterierne for Samsung-enheder. Hvis der findes et match, returnerer formlen perspektivets rækkenummer, ellers returnerer den FALSK Så det samlede returfelt fra denne formel vil være:
{1;FALSK;3;FALSK;5;6;FALSK;FALSK;FALSK;FALSK;9;FALSK}
- SMALL(IF($B$16=$B$5:$B$14, ROW($B$5:$B$14)-ROW($B$5)+1), COLUMN(A1))): SMALL funktionen her udtrækker det laveste eller mindste rækketal, der er fundet i det foregående trin, og det vil blive defineret som det andet argument (row_num) af den INDEX funktion.
- Endelig uddrager den samlede og kombinerede formel det første modelnavn for Samsung-enheder fra Kolonne C .
Læs mere: Brug VLOOKUP med flere kriterier i Excel (6 metoder + alternativer)
Lignende læsninger
- VLOOKUP virker ikke (8 grunde & løsninger)
- Hvorfor VLOOKUP returnerer #N/A, når der findes en match? (5 årsager & løsninger)
- Excel VLOOKUP til at returnere flere værdier lodret
- Excel VLOOKUP til at returnere flere værdier i én celle adskilt af komma
2. VLOOKUP og returner flere værdier horisontalt fra en sekvens af data i Excel
Lad os nu se på et andet scenario. I følgende tabel, Kolonne B har to smartphone-mærker i en ordnet rækkefølge. Ligesom før vil vi udtrække modelnavnene for et bestemt mærke, men med en anden formel. Og denne formel vil kun fungere for et sekventielt område af data. Hvis mærkenavnene er i tilfældig rækkefølge som vist i det foregående afsnit, vil denne formel ikke fungere korrekt.
Vi udtrækker f.eks. kun modelnavne for Xiaomi-smartphones og viser dem horisontalt i Række 16 .
📌 Trin 1:
➤ I output Celle C16 vil den krævede formel være:
=IF(COLUMN()-2<=COUNTIF($B$5:$B$14,$B16), INDEX($C$5:$C$14,MATCH($B16,$B$5:$B$14,0)+COLUMN()-3),"")
➤ Tryk på Indtast og du får straks vist det første navn på Xiaomis smartphone-model med det samme.
📌 Trin 2:
➤ Brug nu Håndtag til påfyldning til automatisk at udfylde til højre langs Række 16 indtil der vises en tom celle.
Du får vist alle modelnavne for det valgte mærke som i skærmbilledet nedenfor.
🔎 Hvordan virker formlen?
- MATCH($B16,$B$5:$B$14,0): MATCH funktion i INDEX funktionen returnerer det første rækkenummer i den celle, der indeholder navnet - Xiaomi.
- MATCH($B16,$B$5:$B$14,0)+KOLONNE()-3: Denne del er det andet argument i INDEX funktion, som definerer det rækkenummer, hvor de første data skal søges efter.
- INDEX($C$5:$C$14, MATCH($B16,$B$5:$B$14,0)+KOLONNE()-3): Denne del er det andet argument i IF-funktionen ([value_if_TRUE]) som udtrækker de første uddata baseret på det rækkeantal, der blev fundet i det foregående trin.
- Hvis der ikke findes nogen match, vil IF funktionen returnerer en tom celle.
💭 Bemærk: For at returnere data med denne formel korrekt, skal du starte tabellen fra Kolonne B hvor Kolonne B vil repræsentere kriterierne og Kolonne C vil have uddataene. Du skal også definere de valgte kriterier i kolonne B under eller over tabellen, som jeg har vist i Celle B16 .
Læs mere: INDEX MATCH vs. VLOOKUP-funktion (9 eksempler)
Afsluttende ord
Jeg håber, at disse to ovennævnte metoder nu vil hjælpe dig med at anvende dem i dit Excel-regneark ved at udtrække data fra en tabel og vise dem horisontalt i en række. Hvis du har spørgsmål eller feedback, så lad mig vide det i kommentarfeltet. Eller du kan tjekke vores andre artikler relateret til Excel-funktioner på dette websted.