python自动化办公之操作表格

openpyxl库

from openpyxl import load_workbook

行:row

列:column

格子:cell

表:sheet

对表格读数据
import xlrd,xlwt


# 在使用xlrd库是要注意表格的构成,他有文件名、表明、表头三部分组成。
#要使用python操作表格那就要先打开表格
xlx = xlrd.open_workbook('F:\python\自动化办公\第一个测试表格.xls')
#上面使用了xlrd.open_workbook方法可以打开一个xls表格,那么要怎么指定这个
# 表格里面的第几张表呢?

#打开第一张表
table1 = xlx.sheet_by_index(0)#通过索引打开第一张表
# table2 = xlx.sheet_by_name('第一个表')#通过表明打开表


#上面可以通过索引和表名打开指定的一张表,那么我们怎么操作指定的单元格呢?
#这里有一个技巧(以wps为例):
# 文件----》选项-----》常规与保存-----》勾选R1C1引用样式;
# 这样行和列我们都可以用数字来表示了。

#指定单元格-----读取数据
value1 = table1.cell_value(1,0)#指定索引进行寻找内容   第一个值指的是行,第二个值指的是列
print(value1)
value2 = table1.cell(0,2).value#第一个值指的是行,第二个值是列,按照索引进行取值
print(value2)
value3 = table1.row(1)[1].value#指定第几行
print(value3)
#指定单元格-------写数据

# 写入数据要是用xlwt库
对表格写数据
import xlwt
#这里可以之间创建一个表格文件

#新建一个工作部要实例化一个对象,这个位置相当于创建了一个文件
new_workbook = xlwt.Workbook()

#接下来要创建一个工作表
workSheet = new_workbook.add_sheet('xlwt表格使用')

#向指定位置写入内容
workSheet.write(0,0,'test')

# 保存
new_workbook.save(r'F:\python\自动化办公\xlwt表格使用.xls')
操作具有格式的表格

设置格式:xlx = xlrd.open_workbook(’./test.xls’, formatting_info=True)

初始化style:style = xlwt.XFSStyle()

初始化字体:font = xlwt.Font()

初始化边框:border = xlwt.Borders()

初始化对齐:alignment = xlrt.Alignment.HORZ_CENTER

  • 设置水平居中对齐:HORZ_CENTER

  • 设置垂直居中对齐:VERT_CENTER

保存:new_xlx.save(r’D:\python总文件\Local\操作表格\text.xls’)

#如果想使用表格的模板放入到程序中
# 那么可以使用xlutiles库
from xlutils.copy import copy
import xlwt,xlrd
# F:\python\自动化办公\学生表.xls
#实例化文件

#想要往模板里面写入数据那么就要先复制模板

xlx = xlrd.open_workbook('./test.xls', formatting_info=True)#格式信息
# print(xlx)
she = xlx.sheet_by_index(0)
# print(she.book)

#将原来的工作部的内容copy出来
new_xlx = copy(xlx)
#新的工作部中获取到第0个表
new_she = new_xlx.get_sheet(0)
#在表中写内容
# new_she.write(2,1,'你好')
# new_she.write(3,1,'你好')
# new_she.write(4,1,'你好')
# new_she.write(5,1,'你好')
# 上面的内容写入的是默认格式
# 如果想要设置样式,需要初始化样式

style = xlwt.XFStyle()

#设置字体
font = xlwt.Font()
font.name = '微软雅黑'
font.bold = True
font.height = 360   #18*20
#将字体格式添加到整体样式中去
style.font = font

#设置边框
border = xlwt.Borders()
border.top = xlwt.Borders.THIN#表示细线
border.bottom = xlwt.Borders.THIN
border.left = xlwt.Borders.THIN
border.right = xlwt.Borders.THIN
#设置完以后要将样式添加到整体样式中去
style.borders = border

#设置对齐格式   水品对齐  垂直对其
alignment = xlwt.Alignment()
alignment.horz = xlwt.Alignment.HORZ_CENTER#水平居中对齐
alignment.horz = xlwt.Alignment.VERT_CENTER#垂直居中对齐
style.alignment = alignment

new_she.write(2,1,'你好',style)
new_she.write(3,1,'你好',style)
new_she.write(4,1,'你好',style)
new_she.write(5,1,'你好',style)
# new_xlx.save('./text.xls')

new_xlx.save(r'D:\python总文件\Local\work\自动化办公\操作表格\text.xls')
返回整个表格的行数
table.nrows
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章