2010-11-19 30 views
7

Potrzebuję edytować skoroszyt programu Excel za pomocą Pythona. Czy istnieje sposób robienia tego bez czytania w skoroszycie, edytowania tego, co chcę i zapisywania go? Czy istnieje sposób, w jaki mogę to zrobić w locie, ponieważ muszę tylko edytować kilka wartości na arkusz.Edytowanie arkuszy programu Excel za pomocą Pythona

Spojrzałem na pyexcelerator, xlrd i xlwt, ale tylko one wydają się wspierać (o ile mogę się dowiedzieć) czytanie i pisanie nie są edytowane. Nie mogę używać pywin32, ponieważ używam linuxa.

Jakieś sugestie dotyczące bibliotek lub konkretnych sposobów robienia rzeczy?

+0

Czy to xls lub xlsx plik? –

+0

to plik xls –

Odpowiedz

2

xlutils posiada moduł kopii, które mogą być dla Ciebie interseting

+0

, który wykonuje lewę. Dzięki! –

9

Po pierwsze, jaka wersja programu Excel? Excel2007 + używa formatu pliku XML, podczas gdy Excel2003 - używa zastrzeżonego formatu binarnego ... więc narzędzia do czytania i pisania działają na różne sposoby.

Jeśli poszukujesz nowszych plików xlsx, spójrz na projekt Eric 'Gazoni z openpyxl. Kod można znaleźć pod adresem bitbucket. Siłą napędową tego jest możliwość odczytu i zapisu plików xlsx z Pythona w jednej bibliotece.

Mimo to odczytuje cały skoroszyt, ale pozwala na modyfikację komórek przed ich zapisaniem.

Po prostu: struktura pliku Excela nie pozwala na łatwą edycję ... nie jest to po prostu przypadek zmiany kilku znaków.

+0

to plik xls, który muszę edytować. –

Powiązane problemy