как конвертировать xls в xlsx - PullRequest
19 голосов
/ 29 марта 2012

У меня есть несколько * .xls (Excel 2003) файлов ,, и я хочу преобразовать эти файлы в xlsx (Excel 2007).

Я использую пакет uno python, когда я сохраняю документы, Я могу установить имя фильтра: MS Excel 97 Но нет имени фильтра, например «MS Excel 2007»,

, пожалуйста, помогите мне, как установить имя фильтра для преобразования xls в xlsx?

Ответы [ 11 ]

0 голосов
/ 11 апреля 2017

Ответ от Рэя обрезал первую строку и последний столбец данных. Вот мое модифицированное решение (для python3):

def open_xls_as_xlsx(filename):
# first open using xlrd
book = xlrd.open_workbook(filename)
index = 0
nrows, ncols = 0, 0
while nrows * ncols == 0:
    sheet = book.sheet_by_index(index)
    nrows = sheet.nrows+1   #bm added +1
    ncols = sheet.ncols+1   #bm added +1
    index += 1

# prepare a xlsx sheet
book1 = Workbook()
sheet1 = book1.get_active_sheet()

for row in range(1, nrows):
    for col in range(1, ncols):
        sheet1.cell(row=row, column=col).value = sheet.cell_value(row-1, col-1) #bm added -1's

return book1
...