欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

python如何操作excel 基础代码

程序员文章站 2024-01-11 16:59:58
一 基础操作1打开excel表格并获取表格名称 wookbook = load_workbook(filename = 表格文件路径) (注意只能打开存在的表格,不能用该方法创建一个新表格文件) workbook.sheetnames # 获取表格文件内的sheet名称、 2 通过sheet名称获取 ......
一 基础操作
1打开excel表格并获取表格名称
wookbook = load_workbook(filename = 表格文件路径)
(注意只能打开存在的表格,不能用该方法创建一个新表格文件)
workbook.sheetnames # 获取表格文件内的sheet名称、

python如何操作excel 基础代码


2 通过sheet名称获取表格对象
sheet = workbook[sheet名称]
3 获取表格尺寸大小
sheet.dimensions
4获取表格内某个格子的数据
sheet = workbook.active 打开活跃的/唯一的表格
cell = sheet['a1'] 获取a1格子
value = cell.value 该格子的数据
5 获取某个格子的行数,列数,坐标
print(cell.row, cell.column, cell.coordinate)
6 可用行数和列数定位某个格子
cell = sheet.cell(row = 1,column =1)
7 获取一系列格子
cells = sheet['a1:a5']
cells = sheet['a']
8 获取一系列格子 (按行或者列获取)
for row in sheet.iter_row(min_row=2,max_row=3,min_col=1,max_col=2):
print(row) #获取一整行
for cell in row:
print(cell) (按行获取)
for col in sheet.iter_row(min_row=2,max_row=3,min_col=1,max_col=2):
print(col)
for cell in col:
print(cell) (按列获取)

9 迭代整个表格的所有行
for row in sheet.rows:
print(row)

10 向某个格子写入内容并保存
sheet['a1']='你好啊'
cell= sheet['a1'] ; cell.value = '你好啊'
11 用python列表数据插入一行
sheet.append(python列表) 会接在表格内已有数据后面
12 插入公式
直接赋值公式字符串
例 sheet['f1002']=average(f2:f1001)
#查看openpyxl支持的公式
from openpyxl.utils import formulae
print(formulae)
13 插入一列
sheet.insert_cols(idx =2)
sheet.insert_cols(idx =2,amount=3)#插入3列
14 插入一行
sheet.insert_rows(idx =2)
sheet.insert_rows(idx =2,amount=3)#插入3行
15 删除行(列)
sheet.delete_rows(idx = 2)
sheet.delete_rows(idx=2,amount=3)
16 移动格子
#移动单元格(正整数为向下或向右,负整数为向左或向上)
sheet.move_range('c1:d4',rows=2,cols=-2)
17 创建新的sheet
workbook.create_sheet(sheet名称)
18 删除一个sheet
sheet = workbook['表格2']
workbook.remove(sheet)
19 复制一个sheet
sheet = workbook['表格1']
workbook.copy_worksheet(sheet)
20 修改表格名称
sheet = workbook.active
sheet.title = '表格1'
21 创建一个新的excel表格文件
workbook = openpyxl.workbook()
22 冻结窗格
sheet.freeze_panes = 'g2'
23 添加筛选
sheet.auto_filter.ref = sheet.dimensions # 对整张表进行筛选
二 颜色 ,字体,样式
网址 https://www.bilibili.com/video/bv197411f7rp?p=9

from openpyxl.styles import font
font(name=字体名称,size=字体大小,bold=是否加粗,italic=是否斜体,color=字体颜色)

1 修改字体样式
font = font(name='思源黑体 regular',size=12,bold=true,italic=true,color='ff000')(rgb与hex转换)
cell.font = font
2 获取表格中字体的样式
cell.font.属性
cell = sheet['a2']
font = cell.font
print(font.name,font.size,font.bold,font.italic)
3 设置对其样式
alignment(horizontal=水平对其模式,vertical=垂直对齐模式,text_rotation=旋转角度,wrap_text=是否自动换行)
cell= sheet['a1']
alignment =alignment(horizontal='center',vertical='center',text_rotation=45,wrap_text=true)
cell.alignment = alignment
4 设置边框样式
side(style=边线样式,color=边线颜色)
border(left=左边线样式,right=右边线样式,top=上边线样式,bottom=下边线样式)
例:
cell = sheet['a3']
side1=side(style='thin',color='ff000')
side2=side(style='dotted',color='ff000')
border = border(left=side1,right=side1,top=side2,bottom=side2)
cell.border=border