Есть ли способ запустить код Python непосредственно из Excel?

#python #excel #xlwings

#python #excel #xlwings

Вопрос:

Я ищу способ запустить код Python непосредственно из Excel.

Моя цель: код принимает 5 отдельных файлов csv в качестве входных данных, обрабатывает данные, а затем выводит один файл csv. Я хочу знать, возможно ли запустить этот код непосредственно из основного входного файла.

Я считаю, что кодировать на python намного проще, чем на VBA, поэтому, если есть надстройка, библиотека или какой-либо модуль, который я могу использовать для запуска этого кода, пожалуйста, дайте мне знать.

Я видел, как некоторые люди использовали xlwings или запускали объект оболочки для вызова функции python, но поскольку мой код содержит множество UDF, которые возвращают несколько значений и требуют чтения многих файлов csv, я не думаю, что это сработает. (Я читал, что объекты оболочки не могут работать с функциями, которые возвращают значения)

Любая помощь приветствуется!! Спасибо

Ответ №1:

я много лет использовал другую хорошую альтернативу pyxll, он может обрабатывать диапазоны значений ov (не только скалярные), которые автоматически привязываются к numpy od pandas. вы можете увидеть это в действии здесь

Ответ №2:

Вы можете использовать xlwings для UDFS. Следуйте этой документации: https://docs.xlwings.org/en/stable/addin.html#workbook-directory-config-config-file

В этом документе также есть пошаговое руководство: https://towardsdatascience.com/how-to-supercharge-excel-with-python-726b0f8e22c2