Формула на Excel: XLOOKUP пренареждане на колони -

Съдържание

Обща формула

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

Обобщение

XLOOKUP може да се използва за пренареждане на колони, чрез влагане на един XLOOKUP вътре в друг. В показания пример формулата в G9 е:

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

Което връща съвпадение на стойността в G5, с всички 4 полета в различна последователност.

Обяснение

Тази формула използва XLOOKUP два пъти, като влага един XLOOKUP в друг. Първият (вътрешен) XLOOKUP се използва за извършване на точно съвпадение на стойността в стойността в G5:

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

  • Lookup_value идва от клетка G5
  • Lookup_array е E5: E15 (кодове)
  • Return_array е B5: E15 (всички полета)
  • Режимът match_mode не е предоставен и по подразбиране е 1 (точно съвпадение)
  • Режимът на търсене не е предоставен и по подразбиране е 1 (първи до последен)

Резултатът е съвпадение на "AX-160", върнато като масив от четирите полета в първоначалния ред:

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

Този резултат се доставя директно на втория (външен) XLOOKUP като аргумент на масива за връщане. Справочната стойност се предоставя като диапазон, представляващ новия ред на полетата, а масивът за търсене е диапазонът, съдържащ оригиналния ред на имената на полетата.

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

  • Lookup_value е диапазонът G8: J8 (нов ред на полето)
  • Lookup_array е диапазонът B4: E4 (стар ред на полето)
  • Return_array е резултатът от първия XLOOKUP

Това е сложният бит. Предаваме в множество справочни стойности, така че XLOOKUP вътрешно ще изчисли множество позиции на съвпадение. За всяка стойност в новия диапазон на поръчки на поле, XLOOKUP ще намери позиция в рамките на стария диапазон на поръчки на поле и ще използва тази позиция, за да извлече стойност от масива за връщане (стойностите, върнати от първата функция XLOOKUP). Резултатът е оригиналният резултат за търсене с полета, подредени в новия ред.

Интересни статии...