Я попытался вставить столбец в Excel.
Однако стиль ячеек был изменен
КОД:
import openpyxl wb = openpyxl.load_workbook('xt3.xlsx') sheet = wb.worksheets[0] sheet.insert_cols(0) [enter image description here][1]wb.save("filename.xlsx")
https://i.stack.imgur.com/hl5QY.png
проблемы с битбакетом: https://bitbucket.org/openpyxl/openpyxl/issues/1098/bugs-insert_cols-changes-merge-cells-and
После некоторых копаний я написал этот код в openpyxl и xlrd / xlwt / xlutils. Поддержка как xls, так и xlsx.
До
* После 1009 *
Ключ должен использовать copy и генерировать координаты. Код здесь
copy
Этот код вставит 3 столбца;Он сохраняет цвет фона, но не все границы.
merged_cells_range = ws.merged_cells.ranges for merged_cell in merged_cells_range: merged_cell.shift(3,0) ws.insert_cols(1,3)