簡體   English   中英

python openpyxl insert_cols更改合並單元格和樣式

[英]python openpyxl insert_cols changes merge-cells and styles

我試圖在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

關於bitbucket的問題: https ://bitbucket.org/openpyxl/openpyxl/issues/1098/bugs-insert_cols-changes-merge-cells-and

該代碼將插入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)

在此處輸入圖片說明

經過一番挖掘后,我在openpyxl和xlrd / xlwt / xlutils中編寫了這段代碼。 同時支持xls和xlsx。

之前 在此處輸入圖片說明

在此處輸入圖片說明

關鍵是使用copy並生成坐標。 代碼在這里

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM