Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft Office Новый топик    Ответить
 Как используя VBA можно передать в переменную значение, полученное от VLOOKUP?  [new]
Yuri KR
Member

Откуда:
Сообщений: 154
Здравствуйте,
Подскажите, как используя VBA можно передать в переменную значение, полученное например от функции ВПР... ?

Можно записать значение от функции ВПР в ячейку, как в п.1, но в ячейке отражается конечно и формула ВПР...
1) Cells(5, 5).Formula = "=VLOOKUP($D7,'C:\[Bill.xlsx]Phone'!$A$2:$D$60,4,0)"

Попытался записать в переменную, используя п.2, но в переменную также переносится и формула расчета.
2) Rezult = ["=VLOOKUP($D7,'C:\[bill.xlsx]Phone'!$A$2:$D$60,4,0)"]

Что и видно, когда используешь п.3
3) Cells(5, 10).Value = Rezult

А вот попробовал еще использовать WorksheetFunction.VLOOKUP, но не могу с синтаксисом разобраться.
4) Rezult = WorksheetFunction.VLOOKUP($D7,’C:\[bill.xlsx]Phone'!$A$2:$D$60,4,0) не работает

Кто поможет разобраться , как передать через VBA значение ВПР в переменную Rezult ?
И что неправильно с синтаксисом в п.4 ?

Спасибо!
9 июн 21, 22:42    [22333550]     Ответить | Цитировать Сообщить модератору
 Re: Как используя VBA можно передать в переменную значение, полученное от VLOOKUP?  [new]
The_Prist
Member

Откуда: www.excel-vba.ru
Сообщений: 1990
Yuri KR
не могу с синтаксисом разобраться
потому что использовать надо синтаксис VBA, а не формул листа:
Rezult = WorksheetFunction.VLOOKUP(Range("D7"),Workbooks("bill.xlsx").Sheets("Phone").Range("A2:D60"),4,0)
10 июн 21, 09:24    [22333589]     Ответить | Цитировать Сообщить модератору
 Re: Как используя VBA можно передать в переменную значение, полученное от VLOOKUP?  [new]
Yuri KR
Member

Откуда:
Сообщений: 154
The_Prist, Добрый день! Да Вы правы.
Сейчас все работает правильно,
Спасибо большое!
Всем хорошего дня!
10 июн 21, 09:59    [22333614]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft Office Ответить