python操作excel-----python向excel写入

from openpyxl import load_workbook

# 只能打开已经存在的表格,不能用该方法创建一个新的表格
workbook = load_workbook(filename='test.xlsx')

# 通过sheet名称获取表格 如果只有一张表,可以直接打开
sheet = workbook.active

# 向某个格子写入内容并保存
cell = sheet['A1']
cell.value = '你好'

# 用python列表数据插入一行
data = (
    ['张三', 1],
    ['李四', 2],
    ['王五', 3],
)
for row in data:
    sheet.append(row)  # 会接在表格内已有数据后面

# 查看openpyxl支持的公式
from openpyxl.utils import FORMULAE
print(FORMULAE)

# 插入公式  直接赋值公式字符串
sheet['B5'] = '=AVERAGE(B2:B4)'

# 插入一列  在idx列左边插入一列  amount要插入的列数
sheet.insert_cols(idx=2, amount=3)

# 插入一列  在idx列上边插入一行  amount要插入的行数
sheet.insert_rows(idx=2, amount=3)

# 删除列  从idx这一列开始,包括这一列
sheet.delete_cols(idx=2, amount=3)

# 移动格子  正整数为向下或向右,负整数为向左或向上
sheet.move_range('C1:D4', rows=2, cols=-2)  # 向下移2行,向左移2列

# 创建新的sheet
workbook.create_sheet('表格1')

# 删除一个sheet
sheet = workbook['表格2']
workbook.remove(sheet)

# 复制一个sheet
workbook.copy_worksheet(sheet)

# 修改表格名称
sheet.title = '表格1'

# 创建新的excel表格文件
from openpyxl import Workbook
wb = Workbook()
sheet = wb.active
sheet.title = '表格1'
workbook.save(filename='new.xlsx')

# 冻结窗格
sheet.freeze_panes = 'B2'

# 添加筛选
sheet.auto_filter.ref = sheet.dimensions


# 修改后记得保存
workbook.save(filename='test.xlsx')

 

posted @ 2020-09-02 16:47  不会飞的鲨鱼  阅读(573)  评论(0编辑  收藏  举报