【openpyxl】:openpyxl操作excel最详细教程

这篇博客介绍了如何使用Python的openpyxl库进行Excel文件的操作,包括加载工作簿、获取sheet、复制sheet、读取和写入单元格数据、以及获取最大行和列。还提供了一个自定义函数来获取实际的最大行和列,避免了openpyxl的不准确性。此外,博客中展示了写入数据到指定单元格的方法。
摘要由CSDN通过智能技术生成

一、读操作

1、加载excel

# -*- coding: utf-8 -*-
import openpyxl
path = 'demo.xlsx'
# 加载工作本
wb = openpyxl.load_workbook(path)

2、获取所有sheet

# 获得所有标签页
#sheet=wb.get_sheet_by_name("Sheet1") #已过时,不用
#获取所有工作表名称
sheet = wb.sheetnames  #返回一个list

3、获取指定sheet

sheet = wb["demo1"]

4、复制 sheet

copy_sheet = wb.copy_worksheet(sheet)

5、获取指定一个单元格对象(法一)

cell = sheet.cell(1, 1)

6、获取指定一个单元格对象(法二)

cell = sheet[‘A1’]

7、cell.value获取属性值

cell.value

8、访问多个单元格

cells_range = sheet['A1':'B5']  #返回一个元组
for cells in cells_range:
    #print(cells)
    for cell in cells:
        print(cell)

9、获取最大行,最大列(openpyxl)(谨慎使用,不准确)

sheet.max_row
sheet.max_column

10、获取最大行,最大列(自定义函数)

def get_max_row(sheet):
    i=sheet.max_row
    real_max_row = 0
    while i > 0:
        row_dict = {i.value for i in sheet[i]}
        if row_dict == {None}:
            i = i-1
        else:
            real_max_row = i
            break

    return real_max_row


j = get_max_row(sheet)
def get_max_column(sheet):
    i=sheet.max_column
    real_max_column = 0
    while i > 0:
        column_dict = {i.value for i in sheet[i]}
        if column_dict == {None}:
            i = i-1
        else:
            real_max_column = i
            break

    return real_max_column


j = get_max_column(sheet)

二、写操作

1、写入数据

sheet['A14'] = 'm14'
wb.save(path)

也可以

m='14'
sheet['A'+m] = 'm14'
wb.save(path)
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值