Python批量合并有合并单元格的Excel文件详解

yipeiwu_com6年前Python基础

合并单元格

合并单元格相信大家都会,比如下面这段简单的代码就可以实现:

app='Word' 
word=win32.gencache.EnsureDispatch('%s.Application' % app) 
doc=word.Documents.Add() 
word.Visible=False 
 
#Title begin  
sel =word.Selection 
sel.Font.Name = u"微软雅黑" 
sel.Font.Size = 8   
sel.Font.Bold = False  
sel.Font.Italic = False 
sel.Font.Underline = False 
sel.ParagraphFormat.Alignment = 1 
 
myRange = doc.Range(0,0) 
myRange.InsertBefore(u'标题1 测试表格') # 使用样式 
#Title end 
#Table Start 
sel.SetRange(10,10) 
tab = doc.Tables.Add(sel.Range, 9, 3) 
tab.Columns(1).SetWidth(10.35*20.35, 0) 
tab.Rows.Alignment = 1 
tab.Style = u"网格型" 
tabnow = doc.Tables(1) 
cell1 = tabnow.Cell(1,1) 
cell2 = tabnow.Cell(3,1) 
 
#myrange = doc.Range(cell1.Range.Start, cell2.Range.End) 
 
sel.SetRange(cell1.Range.Start, cell2.Range.End) 
sel.Cells.Merge() 

很简单吧,本文介绍的是关于Python批量合并有合并单元格的Excel文件,有一定的难度,下面来一起看看吧。

问题描述:

某老师为不同学院讲授“Python程序设计”课程,并根据不同专业和课程特点选用了董付国老师系列教材《Python程序设计(第2版)》《Python程序设计基础(第2版)》《Python可以这样学》《Python程序设计开发宝典》之一。期末时填写各学院成绩单Excel文件,这些Excel文件的格式大致相同,但又略有区别,就是有的“学院”列进行了单元格合并,而有的则没有。

现在想把这些Excel表格合并成为一个表格,并且根据需要把合适的“学院”列进行合并。

其中某三个学院的成绩单如下:


参考代码:


运行结果:

更多学习python的视频请点击这里:https://www.jb51.net/books/606712.html

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,如果有疑问大家可以留言交流,谢谢大家对【听图阁-专注于Python设计】的支持。

相关文章

浅谈Tensorflow 动态双向RNN的输出问题

浅谈Tensorflow 动态双向RNN的输出问题

tf.nn.bidirectional_dynamic_rnn()函数:def bidirectional_dynamic_rnn(   cell_fw,&...

Python实现图片裁剪的两种方式(Pillow和OpenCV)

Python实现图片裁剪的两种方式(Pillow和OpenCV)

在这篇文章里我们聊一下Python实现图片裁剪的两种方式,一种利用了Pillow,还有一种利用了OpenCV。两种方式都需要简单的几行代码,这可能也就是现在Python那么流行的原因吧。...

TF-IDF与余弦相似性的应用(二) 找出相似文章

TF-IDF与余弦相似性的应用(二) 找出相似文章

上一次,我用TF-IDF算法自动提取关键词。 今天,我们再来研究另一个相关的问题。有些时候,除了找到关键词,我们还希望找到与原文章相似的其他文章。比如,"Google新闻"在主新闻下方...

python+selenium实现京东自动登录及秒杀功能

本文实例为大家分享了selenium+python京东自动登录及秒杀的代码,供大家参考,具体内容如下 运行环境: python 2.7 python安装selenium 安装webdr...

基于python进行抽样分布描述及实践详解

基于python进行抽样分布描述及实践详解

本次选取泰坦尼克号的数据,利用python进行抽样分布描述及实践。 备注:数据集的原始数据是泰坦尼克号的数据,本次截取了其中的一部分数据进行学习。Age:年龄,指登船者的年龄。Fare...