Внешняя ссылка не работает

Внешняя ссылка не работает

с помощью CONCATENATE я написал внешнюю ссылку, но значение не выбирается из внешнего файла, так как файлы не связываются друг с другом. INDIRECT() используется, но значения выбираются только если открыт файл Excel. Есть ли другое решение.

решение1

На самом деле, INDIRECT()с закрытым файлом это не сработает.

Традиционный метод обойти это — иметь какое-то «внешнее» место в вашей электронной таблице или даже именованный диапазон, где у вас есть предварительно написанная ПРЯМАЯ формула, смотрящая в (иногда закрытую, иногда открытую) другую электронную таблицу. Затем вы ссылаетесь на эту предварительно написанную формулу, чтобы получить желаемое значение. Если вы создаете ссылку и даете ее, она INDIRECT()будет ссылаться на эту ПРЯМУЮ формулу в той же электронной таблице, и ПРЯМАЯ формула будет смотреть в закрытую электронную таблицу, которая INDIRECT()не может этого сделать.

Если у вас больше пары возможностей, это может быть немного неприятно настраивать... Допустим, вы хотите посмотреть на заданную ячейку в 40 разных таблицах. Только одну из них в ячейке, в которой вы пишете формулу INDIRECT(), конечно, за раз, но это может быть любая из 40. Вам придется написать 40 ПРЯМЫХ формул и использовать немного другую логику, IF()проверочную формулу, в том месте, где вам нужно значение.

Однако вы можете использовать стандартные строковые формулы для записи этих ПРЯМЫХ формул, опуская "=" в начале, используя какой-либо символ, который не будет использоваться в остальной части формулы. Возможно, символ "¢". Таким образом, вы получите 40 "формул", которые выглядят так:

¢A1

Затем, когда закончите, скопируйте и вставьте как значения, замените Find and Replaceэтот необычный символ на «=», и строки преобразуются в формулы. Так... неприятно... но несложно и даже не требует много времени.

Конечно, если у вас есть 40 рабочих книг, к которым нужно обращаться, и, возможно, сотня различных ячеек в каждой, это МОЖЕТ быть довольно утомительным... Но, по крайней мере, тесты, IF()позволяющие выбрать, из какой из них получить значение, на самом деле не будут сложнее.

Но имейте в виду, и это общая вещь для просмотра потенциально закрытых рабочих книг, на Excel ложится довольно тяжелая нагрузка, чтобы сделать все это для каждого места, где он должен это сделать, по сравнению с любым обычным требованием, которое вы предъявляете к Excel. Оценить функцию в формуле гораздо проще, чем перейти в Windows, открыть файл в фоновом режиме, загрузить его, найти значение, заставить Windows закрыть его и поместить значение в текущую рабочую книгу. Это как запустить 40 макросов одновременно, если у вас есть 40 таких ссылок.

Но это БУДЕТ делать, и вы никогда не узнаете, будет ли это заметно, пока не попробуете сами, а затем подождите, пока ваши пользователи попробуют это. Так что не избегайте этого только по этой причине, не попробовав сначала.

Связанный контент