2015-06-29 3 views
0

Чтобы вызвать python из электронной таблицы, я выполняю RunPython(), но возвращает ли это код успеха или отказа? Как узнать в VBA, был ли вызов успешным или нет? Я предполагаю, что один из вариантов - позволить функции python записывать в ячейку в электронной таблице, а затем позволить VBA проверять ее значение, но мне интересно, есть ли лучший, более собственный/предназначенный для этого способ.Зная, был ли вызов Python через xlwings успешным или нет в VBA

+0

Как определяется RunPython()? Является ли это субой или функцией, и если это функция, то какой ее тип возврата? –

+0

Это встроенный макрос xlwing, на который я верю. Я ничего не вижу от него. – RAY

+0

Как я смогу его увидеть или использовать в VBA? (мне нужно установить ссылку или это AddIn) –

ответ

0

В своей текущей реализации xlwings предназначен для полной передачи управления на Python после вызова RunPython, то есть без возвращаемого значения, но будет отображаться всплывающее окно с ошибкой, если оно есть. Причиной этого является кросс-платформенная совместимость, см. Также обсуждение this о том, как бороться с кодом VBA, который должен появиться после вашего вызова RunPython.

+0

. Затем вы рекомендуете разрешить процедуре python устанавливать скрытую ячейку в Excel и позволить VBA проверить значение этой ячейки? – RAY

+0

Следуя предыдущему вопросу, должен ли я иметь возможность направлять вывод ошибки в ячейку и подавлять окно ошибки? – RAY

+0

Вы можете добавить запрос функции для GitHub, и мы продолжим обсуждение там ... –

 Смежные вопросы

  • Нет связанных вопросов^_^