TypeError: ‘set’ object is not subscriptable
1. 整体错误: DeprecationWarning: Call to deprecated function merged_cell_ranges (Use ws.merged_cells.ranges).
merged_ranges = sheet_.merged_cell_ranges # 获取当前工作表的所有合并区域列表
TypeError: ‘set’ object is not subscriptable
2场景: 使用openpyxl的时候使用这个函数爆出的错误,
原因&解决
由于sheet_.merged_cell_ranges
这个方法应该替换为sheet_.merged_cells.ranges
完美解决问题
源代码:
import openpyxl as xl
if __name__ == "__main__":
wb = xl.load_workbook("excel/demo_merge.xlsx")
sheet_ = wb["Sheet1"]
merged_ranges = sheet_.merged_cell_ranges # 获取当前工作表的所有合并区域列表
print(merged_ranges)
解决之后替换代码
import openpyxl as xl
if __name__ == "__main__":
wb = xl.load_workbook("excel/demo_merge.xlsx")
sheet_ = wb["Sheet1"]
merged_ranges = sheet_.merged_cells.ranges # 获取当前工作表的所有合并区域列表
print(merged_ranges)