Openpyxl: почему не работает функция отображения объединенной ячейки в файле - PullRequest
0 голосов
/ 09 мая 2020

При чтении файла Excel мне нужно идентифицировать объединенную ячейку. Для этого я вызываю функцию merged_cell_ranges.

workbook = load_workbook(filename=file)
sheet = workbook["RFI"]
# get the list of first cell of merged cell coordinate
list_of_first_coordinate_in_merget_cell = [cell.__str__().split(':')[0] for cell in sheet.merged_cell_ranges]
for range_ in sheet.merged_cell_ranges:
    # get current coordinate from all merget cell and set it as a string
    cell_obj_to_str = (range_.__str__())
    .....

Работает нормально для xlsx . В проекте мне нужно работать с двумя форматами - xls и xlsx. Я конвертирую из xls в xlsx вот так

 if filename.endswith('.xls'):
    import pyexcel
    _f, _ = filename.split('.')
    pyexcel.save_book_as(file_name=file, dest_file_name=f'{_f}.xlsx')

Конвертирует все успешно, openpyxl работает с новым файлом без ошибок, выполняет запросы и возвращает всю необходимую информацию. Единственная проблема в том, что вызов merged_cell_ranges возвращает пустой результат. При открытии в редакторе Excel я вижу, что все объединенные ячейки находятся на своих местах. Не понимаю, почему это не дает результата. Может есть мысли?

...