Товарищи, есть вопросик. Каким образом сделать работающую ссылку на ячейку в книге которая закрыта? Ссылка формируется через ДВССЫЛ(СЦЕПИТЬ(... Спасибо заранее!
Через ДВССЫЛ никак. Делайте ссылку обычными ссылками. Либо через VBA. Иначе никак. Как получить данные из закрытой книги? в конце статьи есть функция для получения данных из закрытой книги.
Даже самый простой вопрос можно превратить в огромную проблему. Достаточно не уметь формулировать вопросы...
Огромное спасибо, но есть один момент) данные появляются только в 1-й ячейке диапазона. Если в каждую ячейку зайти и нажать Enter то данные появляются. Посему вопрос, как отправить Enter сразу диапазону ячеек?
Но при выполнении в файле невозможно нормально выделить ни одной ячейки( видимо переходит в какой то режим. Подскажите пожалуйста как исправить эту функцию.
"Нашел" сильно сказано. Скорее сходили по моей ссылке и оттуда взяли, т.к. в своем сообщении я точную карту обрисовал, как найти. Исправить никак нельзя. Либо Вы получаете данные из закрытой книги, либо ничего у Вас не тормозит. Одно из двух.
Даже самый простой вопрос можно превратить в огромную проблему. Достаточно не уметь формулировать вопросы...
Дело не в том что тормозит) а в том что режим выделения становится каким то другим, т.е. ячейку нельзя выделить как обычно. Функция отрабатывает очень быстро, спасибо Вам за наводку на нее) но тут думаю дело может быть в чем то другом, может excel не возвращается в привычный режим после отработки функции. Не могу понять в чем дело
У меня задача схожая с задачей woodbox-а. А именно функцией листа получать значение конкретной ячейки из закрытой книги. Должна быть возможность автоматически, по условию изменять путь к файлу. Изучив вышенаписанное удалось получить функцию, которая возвращает путь к ячейке. Возможно ли преобразовать полученный путь в его значение? (только в рамках функции листа, а не макросом) Можно делать руками - копируем ячейку с результатом вычисления функции, специальная вставка вставить значение, F2, ENTER, но это совсем не то что хотелось бы! Подскажите пожалуйста существует ли способ заставить функцию возвращать значение, а не путь.
ооуеее! B.Key спасибо вам! наконец-то у меня хоть что-то заработало!
да, везде на форумах пишут что применение ADO для извлечения данных из закрытой книги это вроде как изврат, но ничего другого, применимого к функции листа, я не нашёл
Дима, в моём сообщении #9 об этом и говорилось. просто на основе кода. потом я его проверил. для файлов *.xls, открываемых из Excel 2010 это почему-то не так. файла нет в списке открытых, тем не менее при повторном пересчете функции или при ручном открытии файла Excel действительно почему-то выдает сообщение о том, что файл уже открыт. поэтому я и откорректировал своё сообщение.
причина мне непонятна. возможно - режим совместимости для файлов *.xls, возможно - какие-то особенности GetObject думаю, GetObject имеет смысл заменить на Workbooks.Open
я решил что "$", как указатель "абсолютности" тут ни к чему и убрал его. Возможно я ошибаюсь и этот символ тут для другого было нужен, но без него работает.
тут я ошибался. $ нужен
Изменено: Максим - 04.08.2014 16:09:31(исправил и убрал не корректный пример )
ой! и правда. прошу прощения. я был уверен что у меня эта строка в функции "закомменчена". Действительно, Ваша правда - без $ не работает. спасибо за подсказку!
Но при попытке открыть файл источник ругается что уже открыт. А когда закрываю файл куда импортирую значения, то открывается и сохраняется файл источник без проблем.