Innehållsförteckning
I Microsoft Excel finns det några alternativ för att VLOOKUP och återge flera värden horisontellt. Även om VLOOKUP funktionen i sig inte kan returnera flera värden horisontellt, men i den här artikeln får du en introduktion till de alternativa alternativen med lämpliga illustrationer.
Ladda ner övningsboken
Du kan ladda ner Excel-arbetsboken som vi har använt för att förbereda den här artikeln.
VLOOKUP för att återge flera värden horisontellt.xlsx2 metoder för att VLOOKUP och återge flera värden horisontellt
VLOOKUP funktionen letar efter ett värde i kolumnen längst till vänster i en tabell och returnerar sedan ett värde i samma rad från den angivna kolumnen. Du kan inte extrahera flera värden samtidigt med hjälp av VLOOKUP-funktionen. Om du drar ner utdatacellen för att generera följande resultat får du dubbla värden för vissa data. Och du kan trots allt inte visa de extraherade data horisontellt med bara VLOOKUP funktion Det finns alltså två alternativ som vi kan använda i Excel-kalkylbladet för att uppfylla våra syften.
1. Användning av funktionerna INDEX, SMALL och IF för att VLOOKUP och återge motsvarande värden horisontellt.
I följande bild visas ett antal smartphonemodeller i tabellen med deras märkesnamn. Eftersom de är i slumpmässig ordning kommer vi att ta fram modellnamnen för ett visst märke och visa dem horisontellt i en rad.
Vi vill till exempel visa modellnamnen för smartphone-märket Samsung i Rad 16 .
📌 Steg 1:
➤ Den nödvändiga formeln i Cell C16 kommer att vara:
=INDEX($C$5:$C$14, SMALL(IF($B$16=$B$5:$B$14,ROW($B$5:$B$14)-ROW($B$5)+1), COLUMN(A1)))
➤ Efter att ha tryckt på Gå in på får du fram det första modellnamnet för Samsung i tabellen.
📌 Steg 2:
➤ Använd nu Handtag för fyllning från Cell C16 och dra den åt höger längs Rad 16 till dess att en #NUM felet visas.
➤ Hoppa över den första #NUM felet och stoppa den automatiska ifyllningen före den cell som innehåller felet.
Då visas alla modellnamn på Samsung smartphones horisontellt som finns i tabellen.
🔎 Hur fungerar formeln?
- RAD($B$5:$B$14)-RAD($B$5)+1: Denna del tilldelas det andra argumentet ([value_if_true]) av den IF Den definierar radnumret för alla data som finns tillgängliga i cellintervallet. B5:B14 och returnerar följande matris:
{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): Den här delen av formeln matchar kriterierna endast för Samsung-enheter. Om en matchning hittas kommer formeln att återge perspektivets radnummer, annars kommer den att återge FALSK Den totala avkastningen från denna formel blir alltså:
{1;FALSE;3;FALSE;5;6;FALSE;FALSE;FALSE;FALSE;9;FALSE}
- SMALL(IF($B$16=$B$5:$B$14, ROW($B$5:$B$14)-ROW($B$5)+1), COLUMN(A1)): SMALL funktionen här extraherar det lägsta eller minsta radnumret från föregående steg och det definieras som det andra argumentet. (row_num) av den INDEX funktion.
- Slutligen extraherar hela och kombinerade formeln det första modellnamnet för Samsung-enheter från Kolumn C .
Läs mer: Använd VLOOKUP med flera kriterier i Excel (6 metoder + alternativ)
Liknande läsningar
- VLOOKUP fungerar inte (8 orsaker & lösningar)
- Varför returnerar VLOOKUP #N/A när det finns en matchning? (5 orsaker & lösningar)
- Excel VLOOKUP för att returnera flera värden vertikalt
- Excel VLOOKUP för att återge flera värden i en cell separerade med kommatecken
2. VLOOKUP och återge flera värden horisontellt från en sekvens av data i Excel
Låt oss nu tänka på ett annat scenario. I följande tabell, Kolumn B har två smartphone-märken i ordnad ordning. Precis som tidigare ska vi extrahera modellnamnen för ett specifikt märke, men med en annan formel. Den här formeln fungerar endast för ett sekventiellt intervall av data. Om märkesnamnen är i slumpmässig ordning, som i föregående avsnitt, kommer formeln inte att fungera på rätt sätt.
Till exempel extraherar vi modellnamnen för Xiaomi-smartphones och visar dem horisontellt i Rad 16 .
📌 Steg 1:
➤ I utgången Cell C16 , blir den nödvändiga formeln:
=IF(COLUMN()-2<=COUNTIF($B$5:$B$14,$B16), INDEX($C$5:$C$14,MATCH($B16,$B$5:$B$14,0)+COLUMN()-3),"")
➤ Tryck på Gå in på så visas Xiaomis första modellnamn på en smartphone direkt.
📌 Steg 2:
➤ Använd nu Handtag för fyllning för att automatiskt fylla ut till höger längs Rad 16 tills en tom cell visas.
Då visas alla modellnamn för det valda märket, som i skärmbilden nedan.
🔎 Hur fungerar formeln?
- MATCH($B16,$B$5:$B$14,0): MATCH funktion i den INDEX funktionen returnerar det första radnumret i cellen som innehåller namnet - Xiaomi.
- MATCH($B16,$B$5:$B$14,0)+KOLUMN()-3: Denna del är det andra argumentet i INDEX funktionen som definierar radnumret där de första uppgifterna i resultatet ska sökas.
- INDEX($C$5:$C$14, MATCH($B16,$B$5:$B$14,0)+KOLUMN()-3): Denna del är det andra argumentet i IF-funktionen. ([value_if_TRUE]) som extraherar de första utdata som baseras på det radnummer som hittades i det föregående steget.
- Om ingen matchning hittas, kommer IF funktionen returnerar en tom cell.
💭 Obs: För att kunna returnera data med denna formel på rätt sätt måste du starta tabellen från Kolumn B där Kolumn B kommer att representera kriterierna och Kolumn C Du måste också definiera de valda kriterierna i kolumn B under eller ovanför tabellen som jag har visat i Cell B16 .
Läs mer: INDEX MATCH och VLOOKUP-funktionen (9 exempel)
Avslutande ord
Jag hoppas att dessa två metoder som nämns ovan hjälper dig att tillämpa dem i ditt Excel-kalkylblad genom att hämta data från en tabell och visa dem horisontellt i en rad. Om du har några frågor eller synpunkter, låt mig veta i kommentarsfältet. Du kan också läsa våra andra artiklar om Excel-funktioner på den här webbplatsen.