У меня есть основная рабочая книга, которая должна вытянуть данные из определенной датированной подпапки. Дата указана пользователем до выполняемых макросов.
Основные действия рабочей книги только как уровень представления и получать/лежать в основе данные в датированных подпапках имеют последовательные имена и форматы.
Предположите, что в моей основной рабочей книге на 'Sheet1' у меня есть следующая функция в A1
:
='C:\Development\GridsResults\20101115\[DATA_sheet_20101115_D.xlsx]Stresses'!$C$9
Вы заметите, что две 'датированных' части в ссылке файла - это должно быть предоставлено пользователем. В этом случае предоставленная дата 15-Nov-2010
. Теперь, если пользователь предоставляет 23-Nov-2010
, вышеупомянутая ссылка должна быть
='C:\Development\GridsResults\20101120\[DATA_sheet_20101120_D.xlsx]Stresses'!$C$9
У меня уже есть формулы, которые создают вышеупомянутые пути к файлам в моем Links
лист в моей основной рабочей книге. Это - динамическая часть, которая создает ссылки. Теперь в Links
покройте, предположите, что результат моего волшебства находится в ячейке B3
и именованный названный Диапазон DATA
т.е.
C:\Development\GridsResults\20101120\[DATA_sheet_20101120_D.xlsx]
Таким образом в теории, каков результат должен быть, та ячейка A1
на Sheet1
в моей основной рабочей книге должен использовать этот сгенерированный путь к файлу
="'" & DATA & "Stresses'!$C$9
Существует ли комбинация стандартных функций Excel, которые могут достигнуть этого?
Я не полагаю, что это было бы возможным использованием стандартных функций Excel. если это, это определенно не выглядело бы симпатичным.
Я думаю, что Ваш лучший выбор состоял бы в том, чтобы создать макрос; метод активации был бы ваше дело, конечно. Макрос выглядел бы примерно так.
Dim L1 As Variant, L2 As Variant
L1 = ThisWorkbook.Names("DATA").RefersToRange
L2 = "='" & L1 & "Stresses'!R9C3"
Sheets("Sheet1").Range("A1").FormulaR1C1 = L2