2016-02-29 3 views
1

Я хотел бы управлять электронной таблицей Excel из Python, например. откройте его и выполните встроенный макрос VBA или некоторый набор действий над данными внутри. У меня есть выбор, хочу ли я работать на Windows или Linux для этого.Манипулировать Excel из Python

Есть варианты пакетов для этого (пакет xlwings от this answer), но я ищу что-то более родное, чтобы изучить, какие варианты есть.

Я думаю, что одним из способов сделать это является COM-интерфейс в Windows, который сам xlwings завершает. Я нашел модуль python win32com, но, похоже, у вас очень мало документации по управлению конкретными объектами, а также какие методы и атрибуты доступны. Может кто-нибудь, пожалуйста, укажите мне хороший источник информации (книги тоже в порядке)?

В качестве альтернативы, есть ли другие варианты для этого, и если да, где я могу их прочитать?

+1

относящийся: http://stackoverflow.com/questions/28102695/running-excel-macro-from-python – gt6989b

ответ

2

Я обошел это, используя функцию Auto_Open() в VBA, которая запускается при открытии файла Excel.

Public Sub Auto_Open() 
    ''' Run other macro here 
End Sub 

После этого вы можете открыть файл Excel, используя subprocess.popen. Это немного взломать, но избегает использования win32com. Мне пришлось пройти этот маршрут, потому что win32com не будет работать на наших заблокированных компьютерах.

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