Змест
VLOOKUP гэта вельмі папулярная функцыя ў Excel, якая адносіцца да вертыкальнага пошуку. Мы можам выкарыстаць убудаваную функцыю VLOOKUP або нават стварыць уласныя формулы, якія будуць працаваць як вертыкальны пошук, каб вяртаць значэнне з больш дынамічнымі крытэрамі. У гэтым артыкуле я збіраюся паказаць, як знайсці апошняе значэнне ў слупку з дапамогай VLOOKUP у Excel.
Спампаваць практычны дапаможнік
Спампуйце кнігу Excel, якую мы выкарыстоўвалі для падрыхтоўкі гэтага артыкула.
Апошняе значэнне VLOOKUP у Column.xlsx
Выкарыстанне функцыі VLOOKUP для Знайдзіце апошняе значэнне ў слупку
Спачатку давайце пазнаёмімся з нашай працоўнай кнігай. У гэтай табліцы дадзеных я выкарыстаў 3 слупкі і 10 радкоў , каб прадставіць сумы продажаў некаторых прадаўцоў у адпаведнасці з адпаведнымі датамі.
У гэтым метадзе мы знойдзем апошняе ўваходжанне значэння з дапамогай функцыі VLOOKUP . VLOOKUP расшыфроўваецца як « Вертыкальны пошук ». Гэта функцыя, якая прымушае Excel шукаць пэўнае значэнне ў слупку. Тут у нас ёсць 3 розныя сумы продажу Біля. Цяпер мы знойдзем суму яго апошніх продажаў у ячэйцы G5
Крокі:
➦ Актывуйце ячэйку G5 , увядзіце формулу, прыведзеную ніжэй:
=VLOOKUP(F5,C5:D13,2)
➦ Націсніце кнопку Enter , і вы атрымаеце апошняе паўтарэнне яго продажаў.
Але VLOOKUP не дасць правільнага адказу для несартаваных даных упрыблізны рэжым. Глядзіце малюнак ніжэй.
І калі мы выкарыстоўваем дакладнае супадзенне для чацвёртага аргумента, ён пакажа першае супадзенне, як на малюнку ніжэй. Таму што vlookup выкарыстоўвае бінарны пошук. Такім чынам, калі ён знаходзіць значэнне, большае за шуканае значэнне, ён вяртаецца да папярэдняга значэння для паказу, паглядзіце яго на малюнку ніжэй.
Такім чынам, каб пераадолець гэтую сітуацыю для неадсартаваныя даныя, каб знайсці апошняе ўваходжанне, нам давядзецца выкарыстоўваць функцыі пошуку або іншыя камбінаваныя формулы. Зараз мы абмяркуем гэтыя метады ў наступных раздзелах.
Альтэрнатывы функцыі VLOOKUP для пошуку апошняга значэння ў слупку
Зараз мы ўжывем чатыры альтэрнатыўныя метады для знайсці апошняе значэнне ў слупку.
Спосаб 1: Выкарыстоўвайце функцыю LOOKUP для пошуку апошняга значэння ў слупку
Тут мы знойдзем апошняе значэнне слупка з функцыя LOOKUP у Excel. Функцыя LOOKUP выкарыстоўваецца для прагляду аднаго слупка або радка, каб знайсці пэўнае значэнне з таго ж месца ў другім слупку або радку. Я знайду суму апошняга продажу тут, у ячэйцы G4.
Крокі:
➦ Актывуйце ячэйку G4.
➦ Увядзіце прыведзеную ніжэй формулу:
=LOOKUP(2,1/(D:D""),D:D)
➦ Затым націсніце кнопку Enter , і вы атрымаеце апошнюю значэнне.
👉 Разбіўка формулы:
➥ D :D””
Тут ён правярае, пустыя ячэйкі ў Стоўбцы D . Гэта будзевярнуць як-
{ХЛУСНЯ;ХЛУСНЯ;ХЛУСНЯ;ПРАЎДА;ПРАЎДА;ПРАЎДА;ПРАЎДА;ПРАЎДА;ПРАЎДА;ХЛУСНЯ…..}
➥ 1/(D:D””)
Мы падзялілі 1 на вынік. Паколькі FALSE азначае 0 , а TRUE азначае 1 , таму вынік будзе наступным:
{#DIV/0!;#DIV/0!; #DIV/0!;1;1;1;1;1;1;1;#DIV/0!;#DIV/0!}
➥ LOOKUP(2,1/(D:D””),D:D)
Я задаў значэнне пошуку 2, таму што функцыя пошуку знойдзе 2 праз слупок, калі дасягне памылка, то ён вернецца да бліжэйшага значэння 1 і пакажа гэты вынік. Гэта вернецца як-
367
Спосаб 2: Выкарыстоўвайце функцыі INDEX і MATCH для пошуку апошняга значэння ў слупку
Тут мы будзем выкарыстоўваць камбінацыю функцый INDEX і MATCH . Функцыя INDEX вяртае значэнне або спасылку на значэнне з табліцы або дыяпазону. І функцыя MATCH выкарыстоўваецца для пошуку вызначанага элемента ў дыяпазоне, а потым вяртае адносную пазіцыю гэтага элемента ў дыяпазоне.
Крокі:
➦ Увядзіце прыведзеную ніжэй формулу ў Cell G5
=INDEX(D5:D13,MATCH(F5,C5:C13,1))
➦ Націсніце кнопку Enter .
👉 Як працуе формула:
➥ MATCH(F5,C5:C13,1)
Тут функцыя MATCH выкарыстоўваецца для пошуку значэння ячэйкі F5 для элементаў, адсартаваных у парадку ўзрастання з масіва C5:C13. Усталяванне трэцяга аргумента '1' паказвае прыблізнаематч. Цяпер функцыя верне як-
6
Яна фактычна паказвае нумар радка, які адлічваецца ад першага запісу.
➥ INDEX(D5:D13,MATCH(F5,C5:C13,1))
І функцыя INDEX дасць адпаведныя продажы ( D5:D13) у адпаведнасці з папярэднім супадзеннем з масіва ( C5:C13) , які вернецца як-
367
Гэта насамрэч апошняе з'яўленне ячэйкі F5
Метад 3: Камбінацыя функцый INDEX, MAX, SUMPRODUCT і ROW для пошуку апошняга значэння ў слупку
Цяпер мы выканаем задачу з дапамогай камбінацыі функцый INDEX, MAX, SUMPRODUCT і ROW . Функцыя ROW знойдзе нумары радкоў. SUMPRODUCT - гэта функцыя, якая памнажае дыяпазон вочак або масіваў і вяртае суму здабыткаў. Функцыя MAX знойдзе максімальны лік. А функцыя INDEX вяртае значэнне або спасылку на значэнне з табліцы або дыяпазону.
Крокі:
➦ Уключыце рэдагаванне ў Ячэйка F7
➦ Скапіруйце і ўстаўце формулу, прыведзеную ніжэй:
=INDEX($C$5:$C$13,SUMPRODUCT(MAX(ROW($B$5:$B$13)*($E$7=$B$5:$B$13))-4))
➦ І націсніце Enter кнопка.
👉 Як працуе формула:
➥ ROW($B$5:$B$13)
Функцыя ROW пакажа нумар радка для масіва, які вернецца як-
{ 5;6;7;8;9;10;11;12;13}
➥ ($E$7=$B$5:$B$13)
Тут Ячэйка E7 наша значэнне пошуку і гэтаформула будзе адпавядаць яму праз масіў B5:B13 . Тады ён вернецца як-
{ХЛУСНЯ;ХЛУСНЯ;ХЛУСНЯ;ХЛУСНЯ;ІСЦІНА;ХЛУСНЯ;ХЛУСНЯ;ХЛУСНЯ;ІСТНА}
➥ ROW($B$5:$B$13)*($E$7=$B$5:$B$13)
Гэта множанне дзвюх папярэдніх формул, якія фактычна памнажаюць адпаведныя нумары радкоў. ХЛУСНЯ азначае 0 і ПРАЎДА азначае 1 . Такім чынам, пасля множання ён вернецца як-
{0;0;0;0;9;0;0;0;13}
➥ MAX(ROW($B$5:$B$13)*($E$7=$B$5:$B$13))
MAX функцыя знойдзе максімальнае значэнне з папярэдняга выніку, якое вернецца як
13
➥ SUMPRODUCT(MAX(ROW($) B$5:$B$13)*($E$7=$B$5:$B$13))-4)
Цяпер для пошуку радка выкарыстоўваецца функцыя SUMPRODUCT нумар у масіве . Паколькі наш спіс пачынаецца з 5-га радка і далей, 4 было аднята. Такім чынам, пазіцыя апошняга ўваходжання Біла - 9 у нашым спісе, таму формула вернецца як -
9 .
➥ INDEX($C$5:$C$13,SUMPRODUCT(MAX(ROW($B$5:$B$13)*($E$7=$B$5: $B$13))-4))
Функцыя INDEX выкарыстоўваецца для пошуку продажаў для апошняга адпаведнага імя. І ён вернецца як-
563
Гэта наш апошні выпадак для Біла.
Метад 4 : Выкарыстоўвайце Excel VBA для пошуку апошняга значэння ў слупку
Калі вы любіце пісаць у Excel, то гэты метад падыходзіць для вас. мыможа выканаць папярэднюю аперацыю таксама з дапамогай метаду VBA. Давайце разгледзім наступныя крокі, як мы можам зрабіць гэта лёгка.
Для гэтага спачатку я зраблю выпадальную панэль для унікальных імёнаў. Затым я ствару новую вызначаную карыстальнікам функцыю “ LastItemLookup ” з дапамогай VBA , якую мы будзем выкарыстоўваць для пошуку апошняга ўваходжання.
Крок 1 :
➦ Спачатку скапіруйце ўнікальныя імёны з галоўнага аркуша на новы аркуш.
Крок 2:
➦ Затым перайдзіце да галоўнага ліста. Актывуйце любую новую ячэйку. Я абраў E5.
➦ Націсніце Даныя > Інструменты даных > Праверка даных.
З'явіцца дыялогавае акно .
Крок 3:
➦ Выберыце Спіс на панэлі Дазволіць .
➦ Затым націсніце значок адкрыць на Крыніца bar.
Крок 4:
➦ Пасля гэтага перайдзіце да новага аркуша і выберыце ўнікальныя імёны.
➦ Націсніце ОК
Глядзіце знак стрэлкі ўніз , паказаны справа ад гэтай ячэйкі. Націснуўшы тут, вы можаце выбраць любое імя. Гэта зэканоміць наш час, таму што нам не трэба будзе ўводзіць імёны кожны раз.
Цяпер мы створым новую функцыю з назвай LastItemLookup з Excel VBA.
Крок 5:
➦ R пстрыкніце правай кнопкай мышы імя аркуша.
➦ Выберыце Прагляд кода з кантэкстнага меню .
Адкрыецца акно VBA .
Крок 6:
➦ Увядзіце прыведзеныя кодыніжэй:
3600
Крок 7:
➦ Затым націсніце кнопку прайгравання, каб запусціць коды. З'явіцца дыялогавае акно з назвай Макрасы .
➦ Націсніце Выканаць .
Наша новая функцыя гатовая.
Крок 8:
➦ Цяпер вярніцеся да працоўнага ліста.
➦ Актывуйце Ячэйку F5
➦ Увядзіце прыведзеную ніжэй формулу з новай функцыяй.
=LastItemLookup(E5,B5:C13,2)
➦ Націсніце Enter , каб атрымаць вынік апошняга ўваходжання для Рон .
Цяпер, калі вы выбіраеце імя любога прадаўца, вы атрымаеце адпаведнае значэнне апошняга ўваходжання.
Выснова
Я спадзяюся, што ўсе апісаныя вышэй метады будуць дастаткова добрымі для пошуку апошняга значэння ў слупку. Не саромейцеся задаваць любыя пытанні ў раздзеле каментарыяў і дайце мне водгук