Кажется, это явное ограничение использования структурированных ссылок на внешние ListObject
таблицы в строке формулы.
Использование рабочих книг с внешними ссылками на таблицы Excel в других рабочих книгах Если рабочая книга содержит внешнюю ссылку на таблицу Excel в другой рабочей книге, эта связанная исходная рабочая книга должна быть открыта в Excel, чтобы избежать #REF! ошибки в целевой книге, содержащей ссылки. Если вы сначала откроете книгу назначения и #REF! ошибки появляются, они будут устранены, если вы откроете исходную книгу. Если вы сначала откроете исходную книгу, вы не увидите кодов ошибок.
Одним из способов решения этой проблемы было бы , а не использование структурированных ссылок, и вместо этого вместо этого ссылаться на абсолютный адрес диапазона, предполагая, что имя листа - "HolidaysTable", или изменить при необходимости:
C:\Users\TChivs\Desktop\Macro\[holidays.xlsx]HolidaysTable!$A$2:$A:$20
В качестве альтернативы, поскольку кажется, что вы создаете CSV с этими вычислениями, было бы лучше просто произвести вычисления на стороне VBA (т. Е. не в формуле рабочего листа, которая впоследствии уничтожается в его значение только при сохранении в формате CSV), я думаю, я бы использовал немного другой подход к дизайну вашего приложения:
Вместо того, чтобы открывать один из многих файлов XLSM, которые что-то делают (то же самое?), Используйте только ОДИН файл .xlsm, который содержит информацию о праздниках и любой другой код макроса / VBA, который вам нужен. Теперь, что касается «многих» файлов XLSM, каждый из них должен быть задан в качестве параметра для каждой соответствующей запланированной задачи, поэтому у вас будет что-то вроде
- Task1 = Открывает main.xlsm с параметром "C: \ pathto \ bar.xlsm"
- Task2 = Открывает main.xlsm с параметром "C: \ pathto \ foo.xlsm"
- Task3 = Открывает main.xlsm с параметром "C: \ pathto \ another.xlsm"
Таким образом, у вас есть весь код, праздники и т. Д. В одном источнике ("main.xlsm"), который делает что-то с другими файлами, как запланировано через диспетчер задач.