
Generisk formel
=INDEX(data,MATCH(lookup,ids,0),2)
Resumé
For at deltage i eller flette tabeller, der har et fælles id, kan du bruge funktionerne INDEX og MATCH. I det viste eksempel er formlen i E5:
=INDEX(data,MATCH($C5,ids,0),2)
hvor "data" er det navngivne område H5: J8 og "ids" er det navngivne område H5: H8.
Forklaring
Denne formel trækker kundens navn og status fra kundetabellen til ordretabellen. MATCH-funktionen bruges til at finde den rigtige kunde, og INDEX-funktionen bruges til at hente dataene.
Henter kundenavn
Når man arbejder indefra og ud, bruges MATCH-funktionen til at få et række nummer som dette:
MATCH($C5,ids,0)
- Opslagsværdien kommer kunde-id'et i C5, som er en blandet reference, med kolonnen låst, så formlen let kan kopieres.
- Opslagsarrayet er de navngivne rækkevidde-id'er (H5: H8), den første kolonne i kundetabellen.
- Matchningstypen er sat til nul for at tvinge et nøjagtigt match.
MATCH-funktionen returnerer 2 i dette tilfælde, som går ind i INDEX som række nummer:
=INDEX(data,2,2)
Med søjlenummeret hårdt kodet som 2 (kundenavne er i søjle 2) og arrayet indstillet til det navngivne interval "data" (H5: J8) returnerer INDEX: Amy Chang.
Henter kundetilstand
Formlen til at hente kundetilstand er næsten identisk. Den eneste forskel er, at søjlenummeret er hårdkodet som 3, da tilstandsinfo vises i 3. søjle:
=INDEX(data,MATCH($C5,ids,0),2) // get name =INDEX(data,MATCH($C5,ids,0),3) // get state
Dynamisk tovejskamp
Ved at tilføje en anden MATCH-funktion til formlen kan du oprette en dynamisk tovejsmatch. For eksempel med det navngivne interval "overskrifter" til H4: J4 kan du bruge en formel som denne:
=INDEX(data,MATCH($C5,ids,0),MATCH(E$4,headers,0))
Her er der tilføjet en anden MATCH-funktion for at få det korrekte kolonnenummer. MATCH bruger den aktuelle kolonneoverskrift i den første tabel til at finde det korrekte kolonnenummer i den anden tabel og returnerer automatisk dette nummer til INDEX.