TypeError when trying to copy a worksheet with a merged cell
Created originally on Bitbucket by steven somersbury (Liam Sanders)
Fairly easy to reproduce, create a new workbook (or see attached) and merge a few cells then run the following code:
#!python
from openpyxl import load_workbook
wb = load_workbook("test.xlsx")
ws = wb["Sheet1"]
ws2 = wb.copy_worksheet(ws)
wb.save("result.xlsx")
This gives the following error.
Traceback (most recent call last):
File "copy_ws.py", line 5, in <module>
ws2 = wb.copy_worksheet(ws)
File "C:\Python\Python36-32\lib\site-packages\openpyxl\workbook\workbook.py", line 394, in copy_worksheet
cp.copy_worksheet()
File "C:\Python\Python36-32\lib\site-packages\openpyxl\worksheet\copier.py", line 43, in copy_worksheet
self.target.merged_cells = copy(self.source.merged_cells)
File "C:\Python\Python36-32\lib\copy.py", line 88, in copy
return copier(x)
File "C:\Python\Python36-32\lib\site-packages\openpyxl\worksheet\cell_range.py", line 456, in __copy__
n.ranges.append(copy(r))
File "C:\Python\Python36-32\lib\copy.py", line 88, in copy
return copier(x)
File "C:\Python\Python36-32\lib\site-packages\openpyxl\worksheet\cell_range.py", line 136, in __copy__
title=self.title)
TypeError: __init__() got an unexpected keyword argument 'min_col'
Attachments: test.xlsx