Vba: як використовувати vlookup з іншого аркуша


Ви можете використовувати такий базовий синтаксис, щоб виконати VLOOKUP з іншого аркуша за допомогою VBA:

 Sub Vlookup()
    Range(" B2 ").Value = WorksheetFunction.Vlookup(Range(" A2 "), Sheets(" Sheet2 ").Range(" A2:C11 "),3,False)
End Sub

У цьому конкретному прикладі виконується пошук значення в клітинці A2 поточного аркуша в діапазоні A2:C11 аркуша під назвою Sheet2 і знаходить відповідне значення в третьому стовпці діапазону, а потім призначає результат клітинці B2 поточного аркуша.

Примітка . Останній аргумент False вказує на те, що нам потрібна точна відповідність.

У наступному прикладі показано, як використовувати цей синтаксис на практиці.

Приклад: як використовувати VLOOKUP з іншого аркуша у VBA

Скажімо, ми маємо такий набір даних на аркуші під назвою Sheet2 у книзі Excel, який містить інформацію про різних баскетболістів:

Тепер припустімо, що ми переходимо до аркуша під назвою Sheet1 і хочемо знайти назву команди «Kings» у наборі даних Sheet2 і повернути відповідне значення в стовпці Assists Sheet1 .

Для цього ми можемо створити такий макрос:

 Sub Vlookup()
    Range(" B2 ").Value = WorksheetFunction.Vlookup(Range(" A2 "), Sheets(" Sheet2 ").Range(" A2:C11 "),3,False)
End Sub

Коли ми запускаємо цей макрос, ми отримуємо такий результат:

Макрос правильно повертає значення 3 передачі для Королів.

Якщо ми змінимо назву команди в клітинці A2 , а потім знову запустимо макрос, він правильно знайде допоміжне значення для нової назви команди.

Наприклад, скажімо, ми змінимо назву команди на «Warriors» і знову запустимо макрос:

Макрос правильно повертає значення 4 передачі для Воїнів.

Примітка . Ви можете знайти повну документацію для методу VBA VLookup тут .

Додаткові ресурси

У наступних посібниках пояснюється, як виконувати інші типові завдання у VBA:

VBA: Як використовувати зіставлення індексів
VBA: Як сортувати аркуш за кількома стовпцями
VBA: як перевірити, чи містить рядок інший рядок

Додати коментар

Ваша e-mail адреса не оприлюднюватиметься. Обов’язкові поля позначені *