RunFrozenPython в xlwings жалуется на Workbook.caller() в Python

У меня есть скрипт на Python, копирующий значения из одной электронной таблицы в другую. Он хорошо работает с RunPython Когда я пытаюсь использовать RunFrozenPython, он выдает это исключение xlwings думает, что вызывающий объект не является Excel, что я могу сделать, чтобы он думал, что вызывающий объект является Excel, например, когда я успешно использую команду RunPython.

xlwings считает, что вызывающий абонент не Excel, что я могу сделать, чтобы он думал, что вызывающим абонентом является Excel? как успешно работает RunPython.

Прежде чем я получаю исключение, я получаю предупреждение, вот снимок. Сценарий ждет, пока я не нажму OK, а затем выдаст ошибку, как показано выше.

Вот предупреждающее сообщение, указанное местоположение не существует на моей машине -

введите здесь описание изображения


person Nick    schedule 15.09.2015    source источник
comment
При чем здесь VBA/Excel-VBA?   -  person Siddharth Rout    schedule 15.09.2015
comment
Попробуйте обновить модуль xlwings VBA и пакет Python до версии 0.4.0 и посмотрите, поможет ли это...   -  person Felix Zumstein    schedule 15.09.2015
comment
Я использую Excel-VBA для вызова скрипта Python, который ссылается на вызывающую книгу, используя метод xlwings.Workbook.caller(), который выдает ошибку, следовательно, Excel-VBA/VBA   -  person Nick    schedule 16.09.2015
comment
Я только что обновился до 0.4.0 и включил файл bas в свой скрипт vba, получив ту же ошибку. Использование Python 2.7.9. Ваша помощь очень ценится Феликс.   -  person Nick    schedule 16.09.2015
comment
Файл exe создается с помощью Pyinstaller   -  person Nick    schedule 16.09.2015
comment
Предупреждение от PyInstaller: stackoverflow.com/q/19055089/918626   -  person Felix Zumstein    schedule 16.09.2015


Ответы (1)


Я решил ошибку, используя wb = Workbook("path to file")

вместо использования wb = Workbook.caller()

Таким образом, на excel ссылается не вызывающий, а его абсолютный путь.

Я все еще мог бы использовать помощь в разрешении предупреждения :)

person Nick    schedule 16.09.2015
comment
Это не то, что вы должны делать, так как это сломается, как только вы переместите электронную таблицу или переименуете ее. Публикация минимального примера кода, который воспроизведет ошибку, поможет. Я никогда не рассматривал зависание с помощью PyInstaller, только с cx_Freeze, так что, возможно, это часть проблемы. - person Felix Zumstein; 16.09.2015