Страницы: 1
RSS
ВПР с динамическим именем листа
 
Добрый день!
В чем суть проблемы:
Имеется сводный файл, который аггрегирует в себе различную информацию из сборки других файлов. Эти файлы выгружаются ежедневно и в их название дописывается дата, например - "Отчет1_20.03.2019".  
В сводном файле каждый день приходится править дату файла в формуле:
=ВПР(I4;[Отчет1_20.03.2019.csv]Отчет1_20.03.2019!$D:$G;2;0)
Я хочу написать что то типа такого:
=ВПР(I4;[Отчет1_"&ТЕКСТ(СЕГОДНЯ();"ДД.ММ.ГГГГ")&".csv]Отчет1_"&ТЕКСТ(СЕГОДНЯ();"ДД.ММ.ГГГГ")&"!$D:$G;2;0)
Но excel выдает ошибку.

Подскажите можно ли, как нибудь реализовать это формулой или средставми VBA?
 
формирование рабочих ссылок из текста занимается функция ДВССЫЛ но она не работает с закрытыми книгами
Лень двигатель прогресса, доказано!!!
 
ВПР с динамическим именем листа - это явный признак нерационально организованных данных (ошибки на стадии проектирования системы)
Программисты - это люди, решающие проблемы, о существовании которых Вы не подозревали, методами, которых Вы не понимаете!
 
Ігор, мне в работе иногда требуются исторические данные, поэтому все так сложно.

Цитата
Сергей написал: ...функция ДВССЫЛ...
Сергей, не могли бы привести пример такой формулы?
 
=двссыл("""&A1&"'!A:A")
в данном случае идет ссылка на ячейку А1 в которой указано название листа
Лень двигатель прогресса, доказано!!!
 
С этим разобрался, а как указать другую книгу и лист в ней? Допустим если эта книга открыта
 
открываете две книги в одной пишите = и переходите в другую которая нужна потом копируете получившуюся ссылку и вставляете в формулу заменив переменную на ссылку на ячейку как показано выше
Лень двигатель прогресса, доказано!!!
 
Цитата
Вот что получилось, в AO1 название книги и название листа, они совпадают.
=ВПР(I4;ДВССЫЛ("'[" & $AO$1 & "]" & $AO$1 & "'!$D:$G");2;0)

Но все равно не работает.
Изменено: Walkish - 20.03.2019 16:43:08
 
Walkish, кнопка цитирования не для того, чтобы над ней издевались при каждом ответе. Цитата - не бездумная копия!
Вернитесь, приведите сообщение в порядок
 
сравнивайте это рабочий вариант который дает результат
Код
=ВПР(A2;ДВССЫЛ("'["&A3&".xlsm]"&A1&"'!D2:K20");2;0)
Лень двигатель прогресса, доказано!!!
 
Сергей, большое спасибо, все получилось!
Проблему с закрытыми книгами решил макросом ;

Sub openfile()
Dim ab As Workbook
Set ab = GetObject("путь" & Date & ".csv")
End Sub
Страницы: 1
Наверх