Страницы: 1
RSS
Путь к файлу для функции ВПР в vba
 
Здравствуйте.
Подскажите пожалуйста, записал макрос, который при помощи функции ВПР, подтягивает столбец с другого файла в нужный мне файл.
Проблема в том, что Макрос постоянно запрашивает путь к файлу с которого выполняется функция ВПР.

Код
Range("Таблица1[#All]").Select
    ActiveWindow.ScrollColumn = 2
    Columns("J:J").Select
    Selection.Insert Shift:=xlToRight, CopyOrigin:=xlFormatFromLeftOrAbove
    Range("J2").Select
    ActiveCell.FormulaR1C1 = _
        "=VLOOKUP([@Причина],'[Перевод причин.xlsx]Лист1'!C1:C2,2,0)"

Путь к файлу не меняется ( C:\Users\mazurenko.v\Desktop\Статистика\Перевод причин.xlsx ).

Заранее спасибо.

 
см. #5, #6
Изменено: Казанский - 12.01.2018 12:59:49 (здесь был неверный совет)
 
vlad_vlad, если интересно, то посмотрите в сторону Power Query - буквально в пару-тройку кликов можно динамически подтягивать (настроить связь) хоть столбец, хоть таблицу целиком в любой файл из файла-источника. А там уже обычными формулами. А можно и вообще подтянуть запросом таблицу из исходника, и внутри PQ их связать/объединить (круче ВПР) и выгрузить результат на лист или использовать для построения сводной  ;)
Во всех делах очень полезно периодически ставить знак вопроса к тому, что вы с давних пор считали не требующим доказательств (Бертран Рассел) ►Благодарности сюда◄
 
Если вкинуть полный путь в код, то ВПР не работает, во всех ячейках вылазит ошибка.
Может есть еще какой-то вариант?
 
vlad_vlad, вставьте формулу в J2 вручную, закройте книгу Перевод причин.xlsx, в окне Immediate VBA получите формулу
Код
?[j2].formular1c1
, вставьте полученную строку в код.
 
=VLOOKUP([@Причина],'C:\Users\mazurenko.v\Desktop\Статистика\[Перевод причин.xlsx]Лист1'!C1:C2,2,0)
 
Большое спасибо, все работает)
Страницы: 1
Наверх