python 拆分excel单元格_python使用openpyxl excel 合并拆分单元格
再次编辑中,这次是在使用删除列的时候发现,合并单元格会出现漏删除情况,才想到用拆分单元格,没想到unmerge_cells(),worksheet.merged_cells返回的合并单元格对象居然不能迭代,
函数参数也变了,居然可以直接上参数;;openpyxl=Version: 2.5.9;
列 : worksheet.delete_cols(2, 1) 表示第二列开始,删除一列 ,行 worksheet.delete_rows(2, 1)
worksheet.unmerge_cells(start_row=1, start_column=7, end_row=2, end_column=7)
表示第一行开始,第二行结束, 低7列开始第七列结束, 就是把G1:G2合并的单元格给拆分了,下面的是合并单元格就不多说了
worksheet.merge_cells(start_row=1, start_column=2, end_row=2, end_column=2)
使用 openpyxl 库拆分已经合并的单元格;主要是使用了:
worksheet.merged_cells获取已经合并单元格的信息;再使用worksheet.unmerge_cells()拆分单元格;
importopenpyxl
workbook= openpyxl.load_workbook(path) #加载已经存在的excel#workbook = openpyxl.Workbook(path)
name_list =workbook.sheetnames#worksheet = workbook.get_sheet_by_name(name_list[0]) #最新版本已经不能使用这种方法
worksheet =workbook[name_list[0]]
m_list= worksheet.merged_cells #合并单元格的位置信息,可迭代对象(单个是一个'openpyxl.worksheet.cell_range.CellRange'对象),print后就是excel坐标信息
cr =[]for m_area inm_list:#合并单元格的起始行坐标、终止行坐标。。。。,
r1, r2, c1, c2 =m_area.min_row, m_area.max_row, m_area.min_col, m_area.max_col#纵向合并单元格的位置信息提取出
if r2 - r1 >0:
cr.append((r1, r2, c1, c2))print('符合条件%s' %str(m_area))#这里注意需要把合并单元格的信息提取出再拆分
for r incr:
worksheet.unmerge_cells(start_row=r[0], end_row=r[1],
start_column=r[2], end_column=r[3])
workbook.save(path)
再使用 worksheet.unmerge_cells()输入参数的时候,若和 worksheet.merged_cells的结果放到同一个循环;
经常出现有些单元格拆分没有完成(实际上可以多次运行就可以完成了),我估计是再拆分单元格的时候有数据动态的改变了,
导致(再执行m_area.min_row时)m_list中的'openpyxl.worksheet.cell_range.CellRange'对象动态获取值时发生了改变;
只好把位置信息提取出,再调用;后面我测试过m_list对象deepcopy一份就可以了;
from copy importdeepcopy
l=deepcopy(m_list)for m_area inl:#合并单元格的起始行坐标、终止行坐标。。。。,
r1, r2, c1, c2 =m_area.min_row, m_area.max_row, m_area.min_col, m_area.max_colif r2 - r1 >0:
worksheet.unmerge_cells(start_row=r1, end_row=r2,
start_column=c1, end_column=c2)
python 拆分excel单元格_python使用openpyxl excel 合并拆分单元格相关推荐
- python openpyxl合并单元格_python使用openpyxl excel 合并拆分单元格
再次编辑中,这次是在使用删除列的时候发现,合并单元格会出现漏删除情况,才想到用拆分单元格,没想到unmerge_cells(),worksheet.merged_cells返回的合并单元格对象居然不能 ...
- python统计excel文本单元格_python xlrd从excel文本单元格接收浮点数
背景:对于每个单元格,xlrd报告存储在XLS文件中的内在值(如果有).最初仅根据文件中的记录类型分配值类型(例如,NUMBER和RK记录包含浮点数).它按照here所述对格式进行分类,并使用该信息覆 ...
- python中xlrd写操作_Python读写操作Excel模块_xlrd_xlwt_xlutils
Python 读写操作Excel -- 安装第三方库(xlrd.xlwt.xlutils.openpyxl) 如果仅仅是要以表单形式保存数据,可以借助 CSV 格式(一种以逗号分隔的表格数据格式)进行 ...
- python做excel表格代码_python实现跨excel的工作表sheet之间的复制方法
python,将test1的Sheet1通过"跨文件"复制到test2的Sheet2里面. 包括谷歌没有能搜出这种问题答案. 我们贴出代码. 我们加载openpyxl这个包来解决: ...
- python替换excel指定内容_Python脚本操作Excel实现批量替换功能
大家好,给大家分享下如何使用Python脚本操作Excel实现批量替换. 使用的工具 Openpyxl,一个处理excel的python库,处理excel,其实针对的就是WorkBook,Sheet, ...
- python win32选取文件夹_python小工具 | Excel的xls和xlsx格式文件转换
众所周知Excel文件格式转换可以通过"另存为"的方式转换格式,可以说是简单方便,但是对于大量文件转换或者经常重复进行转换操作时,这种方法就很不方便. 显然利用程序对xls和xls ...
- java excel 分页合并,excel分页-Excel办公技巧——完整显示跨页合并的单元格
在日常工作中,我们经常会遇到大量合并的单元格,而部分合并的单元格会跨页显示,也即:合并的单元格区域显示在两页中.如下图示: 而我们最终想要的打印效果,如下: 那么,上述效果是如何实现的呢?方法如下: ...
- python 拆分excel单元格_Python怎么在Excel中把一个单元格里的内容拆分提取?:excel表格已拆分的数据提取...
Python怎么在Excel中把一个单元格里的内容拆分提取? 有规律的话写代码可以处理,没有就没有办法 如何将EXCEL表中的数据分离出来? 如图,B1输入:=LEFT(A1,FIND("排 ...
- python 拆分excel工作表_Python几行代码轻松拆分表格
Python几行代码轻松拆分表格 作者:梅朵 微信公众号:实用办公编程技能 微信号:Excel-Python 什么?,Python几行代码竟然可以按指定轻松拆分表格? 将test.xls中的数据按地区 ...
- python 读取合并单元格_python使用xlrd读取合并单元格
合并单元格 操作方法: 1.使用xlrd自带属性:merged_cells # 获取表格中所有合并单元格位置,以列表形式返回 (起始行,结束行,起始列,结束列) merged = sheet.merg ...
最新文章
- Android应用安全开发之浅谈加密算法的坑
- Linux 技术篇-文件大小查看方法实例演示,查看指定文件大小,查看列表下所有文件夹和文件的大小
- php mysql 中文_PHP连接MySQL查询结果中文显示乱码解决方法
- 分治-Strassen矩阵乘法
- python返回上一条指令必须包括_python基础(10)--模块
- 传统CPU架构不再是高性能计算唯一选择
- 联想小新air13pro重装系统_小新air13pro改win7系统 联想小新air13pro安装win7系统教程...
- 10月21日Ajax培训日记
- 编译原理(龙书):第三章部分题目参考答案
- 安卓微信自动抢红包插件优化和实现
- 25个很酷的jQuery倒计时脚本–添加动态计数器!
- NPOI操作Excel类代码(打开 插入 设置行列宽 合并单元格 增删改工作表 保存等等) .NET4.5
- 《图解网络硬件》网络硬件通用基础知识
- FusionSphere虚拟化套件
- vmware虚拟机网络配置详解
- Ubuntu安装搜狗fcitx无法正常安装的问题
- 机器学习中使用的独热编码
- python导入siri_python实现一个简洁siri功能
- 89c52流水灯c语言程序,【学习之路】STC89C52RC流水灯程序
- sipXecs技术交流QQ群
热门文章
- DayDayUp:20190908易建联27分中国男篮负无缘直通奥运—回顾2008年奥运中国男篮— 易建联加油!中国男篮加油!
- VSLAM之边缘化 Marginalization 和 FEJ (First Estimated Jocobian)
- 如何看待花呗接入央行个人征信?
- 【原创TVT技术解析】“双击Q盘”“Q盘红色图标消失”问题
- laravel 自定义函数
- 用分治法解决青蛙跳问题(斐波那契数列)
- 已知某网络有一个地址是167.199.170.82/27,问这个网络的网络掩码。
- cdr怎么把矩形去掉一个边_cdr怎么消除图形的边框?
- Google设置新标签页默认地址
- 高德地图定位,搜索,导航功能