Leta upp med två villkor
Normalt brukar man använda ett ”sökvärde” i en letaupp-funktion. Detta sökvärde finns i en kolumn och är unikt förekommande. Men i detta tips ska vi se hur man kan använda två sökvärden från två olika kolumner för att hitta rätt resultat. Vi utgår från en lista (se bild nedan) där vi ska hitta rätt kod med hänsyn till vald person och lokal.
Varje person har en unik kod för varje lokal. Om vi slår ihop Person och Lokal får vi en unik kombination för att hitta rätt kod. För att lösa detta använder vi funktionerna INDEX och PASSA [MATCH]. Lösningen ges i version Excel Microsoft 365. (Längre ner i tipset ser du alternativ för äldre programversioner)
Vi rekommenderar dessa Excelkurser:
www.infocell.se – lärarledda kvalitetskurser i Excel
www.officekurs.se – oslagbar e-kurser i Excel & Office-paketet
Använd två villkor
Med INDEX-funktionen markerar vi kolumnen där vårt resultat finns (Kod) och sedan anger vi korrekt rad med hjälp av PASSA [MATCH].
För att använda två villkor så sätter vi samman dessa med &-tecknet. Detsamma kommer vi göra med de två olika kolumnerna som sökvärdet finns.
För att göra sökvärdena dynamiska använder jag cellreferenser i en uppställning.
I H-kolumnen skapas själva letaupp-formeln och vi använder sökvärden från F och G. Dessa kan enkelt ändras i efterhand och generera den nya koden från listan.
=INDEX(D3:D14;PASSA(F3&G3;B3:B14&C3:C14;0))
I formeln ovan kan vi se att sökvärdena i F3 och G3 är sammansatta med ett &-tecken. I nästa argument för var sökvärdet finns (letauppvektor) så är även områdena sammansatta på ett likadant sätt. Med detta utförande så söks kombinationen av sökvärdena radvis i de två områdena och på så sätt kan rätt kombination hittas.
Just denna lösning med INDEX och PASSA är väldigt flexibel för de kolumner som används behöver inte vara bredvid varandra. Kravet är att de måste vara av samma storlek, alltså lika många rader.
Men du måste också hålla koll på underlaget för som vanligt hittar Excel endast en lösning, kombinationen av två sökvärden måste vara unik i underlaget. Det blir alltid den första träffen räknat uppifrån som resulteras om det skulle finnas dubbletter.
Lösning i äldre programversioner
Observera! Arbetar du i äldre programversioner behöver du bekräfta formeln som en så kallad matrisformel. Istället för att trycka enbart Enter, trycker du Ctrl+Shift+Enter.
{=INDEX(D3:D14;PASSA(F3&G3;B3:B14&C3:C14;0))}
Du kan också lösa uppgiften med funktionen PRODUKTSUMMA [SUMPRODUCT], utan att behöver använda en matrisformel. Se lösning i bilden nedan.
Läs mer om våra självstudiekurser på www.officekurs.se.
Värt att notera att detta bara fungerar som CSE-formel.
Helt riktigt – funkar inte i äldre programversionen – tack för feedbacken . Har nu uppdaterat tipset så att två olika lösningar för äldre Excelversioner finns med i tipset också .
Mvh,
Tobias Ljung