Excel képlet: Az XLOOKUP oszlopok átrendezése -

Általános képlet

=XLOOKUP(neworder,oldorder,XLOOKUP(val,lookup,results))

Összegzés

Az XLOOKUP az oszlopok átrendezésére használható, ha az egyik XLOOKUP beágyazódik a másikba. A bemutatott példában a G9 képlete a következő:

=XLOOKUP(G8:J8,B4:E4,XLOOKUP(G5,E5:E15,B5:E15))

Ami a G5 értékének egyezését adja vissza, mind a 4 mező más sorrendben.

Magyarázat

Ez a képlet kétszer használja az XLOOKUP-ot, azáltal, hogy az egyik XLOOKUP-ot beágyazza a másikba. Az első (belső) XLOOKUP a G5-ben szereplő érték pontos egyezésének megkeresésére szolgál:

XLOOKUP(G5,E5:E15,B5:E15)

  • A keresési_érték a G5 cellából származik
  • A lookup_array értéke E5: E15 (kódok)
  • A return_array értéke B5: E15 (minden mező)
  • A match_mode nincs megadva, és alapértelmezés szerint 1 (pontos egyezés)
  • A search_mode nincs megadva, és alapértelmezés szerint 1 (első az utolsóig)

Az eredmény az "AX-160" meccs, amelyet mind a négy mező tömbjeként adtak vissza az eredeti sorrendben:

(160,130,60,"AX-160")

Ez az eredmény közvetlenül a második (külső) XLOOKUP-ba kerül, mint visszatérő tömb argumentum. A keresési érték a mezők új sorrendjét képviselő tartományként kerül megadásra, a keresési tömb pedig az eredeti mezőnév-sorrendet tartalmazó tartomány.

=XLOOKUP(G8:J8,B4:E4,(160,130,60,"AX-160"))

  • A keresési_érték a G8: J8 tartomány (új mezőrendezés)
  • A lookup_array a B4: E4 tartomány (régi mező sorrend)
  • A return_array az első XLOOKUP eredménye

Ez a trükkös bit. Több keresési értéket adunk át, így az XLOOKUP belső módon kiszámítja az egyezés több pozícióját. Az új mező sorrendtartomány minden értékéhez az XLOOKUP talál egy pozíciót a régi mező sorrendtartományon belül, és ezzel a pozícióval lekér egy értéket a visszatérő tömbből (az első XLOOKUP függvény által visszaadott értékek). Az eredmény az eredeti keresési eredmény, új mezőkben rendezett mezőkkel.

érdekes cikkek...