'''
Excel文件三个对象 workbook: 工作簿,一个excel文件包含多个sheet。
sheet:工作表,一个workbook有多个,表名识别,如“sheet1”,“sheet2”等。
cell: 单元格,存储数据对象
''' import openpyxl
from openpyxl import Workbook, load_workbook wb = Workbook()
ws1 = wb.active # active方法得到第一个sheet
ws2 = wb.create_sheet('MySheet1') # 插入到最后default
ws3 = wb.create_sheet('MySheet3', 2) # 插入到制定位置,0表示最前面 ws1.title = 'newSheet1' # 创建的sheet的名称会自动创建,按照sheet,sheet1,sheet2自动增长,通过title属性可以修改其名称
ws4 = wb.create_sheet(title='Sheet4')
ws4.sheet_properties.tabColor = "1072BA"
# 默认的sheet的tab是白色的,可以通过 RRGGBB颜色来修改sheet_properties.tabColor属性从而修改sheet tab按钮的颜色:
# 当你设置了sheet的名称,可以将其看成workbook中的一个key。也可以使用openpyxl.workbook.Workbook.get_sheet_by_name() 方法 # 单元格赋值,3种方式
ws4.cell(row=2, column=3, value=100)
ws4.cell(row=2, column=4).value = 200
ws4['E2'] = 300 ws4.cell(3, 3, 666) # ws.append(iterable)
# 添加一行到当前sheet的最底部(即逐行追加从第一行开始) iterable必须是list,tuple,dict,range,generator类型的。 1,如果是list,将list从头到尾顺序添加。 2,如果是dict,按照相应的键添加相应的键值
# ws.append([‘This is A1’, ‘This is B1’, ‘This is C1’])
# ws.append({‘A’: ‘This is A1’, ‘C’: ‘This is C1’})
# ws.append({1: ‘This is A1’, 3: ‘This is C1’}) tableTitle = ['age' , 'name' , 'sex'] line1 = ['18', 'John', 'M']
line2 = ['20', 'Helen', 'F'] for col in range(len(tableTitle)):
c = col + 1
ws1.cell(row=1, column=c).value = tableTitle[col] excel1 = load_workbook('E:/test01.xlsx')
excel2 = load_workbook('E:/test02.xlsx')
# print(excel1.sheetnames)
sheetname1 = excel1.sheetnames[-1]
sheetname2 = excel2.sheetnames[-1] # t1 = excel1[sheetname1]
t1 = excel1['sheetl']
t2 = excel2[sheetname2] t1['D2'] = 'hello' for i in range(10):
t1["C%d" % (i+1)].value = i + 1 t1['E1'].value = "=SUM(C7:C8)" t1.append(line1)
t1.append(line2) print(t1['E1'].value)
excel1.save('E:/new01.xlsx') # print("A列:", t1['A'])
# print("1行:", t1['1'])
# print("B6格的值:", t1['B6'].value)
# print("A4格的值:", t1.cell(row=4, column=1).value) # 可简写为 t1.cell(4,1).value
#
# 需写入的表,再打开的状态下是不能成功执行代码的 # 先用load_workbook读取一个excel,修改之后save成原来的文件,会报错:PermissionError: [Errno 13] # print("最大行数:", t1.max_row)
# print("最大列数:", t1.max_column)
# print("最小列数:", t1.min_column)
# print("\n")
# print("B列的值为:")
# for i in t1['B']:
# print(i.value, end='\n') print("\n")
print("表格内容如下:")
for r in range(t1.max_row):
r += 1
for c in range(t1.max_column):
c += 1
print(t1.cell(r, c).value, end="\t") # 使用end实现不换行输出
print("\n") # for row in t1.iter_rows(min_col=1, min_row=1, max_col=3, max_row=3, values_only=True):
# for cell in row:
# print(cell, end='\n')

Python使用openpyxl模块操作Excel表格的更多相关文章

  1. 使用xlsxwriter模块和xlrd模块操作Excel表格

    1.xlsxwriter模块介绍:主要用来生成excel表格,插入数据.插入图标等表格操作 如下代码:目的是往demo01.xlsx插入数据和图片 # 导入xlsxwriter模块:主要用来修改表格的 ...

  2. Python使用xlwt模块 操作Excel文件

    导出Excel文件     1. 使用xlwt模块 import xlwt import xlwt    # 导入xlwt # 新建一个excel文件 file = xlwt.Workbook() # ...

  3. 利用openpyxl模块处理excel表格

    一.选取表格中的内容创建图表 1.openpyxl支持利用工作表中单元格的数据,创建条形图.折线图.散点图等.步骤如下: 1).从一个矩形区域选择的单元格,创建一个Reference对象. 2).通过 ...

  4. 使用openpyxl模块将Excel中的数据导入数据库

    这里将不介绍openpyxl模块的详细操作. 主要就是记录一个使用openpyxl模块将Excel表格的数据导入数据库中的实例. from openpyxl import load_workbook ...

  5. Python 利用Python操作excel表格之openyxl介绍Part2

    利用Python操作excel表格之openyxl介绍 by:授客 QQ:1033553122 欢迎加入全国软件测试交流qq群(群号:7156436) ## 绘图 c = LineChart()    ...

  6. Python 利用Python操作excel表格之openyxl介绍Part1

    利用Python操作excel表格之openyxl介绍 by:授客 QQ:1033553122 欢迎加入全国软件测试交流qq群(群号:7156436),免费获取以下性能监控工具(类似Nmon精简版) ...

  7. 转 Python - openpyxl 读写操作Excel

    Python - openpyxl 读写操作Excel   openpyxl特点   openpyxl(可读写excel表)专门处理Excel2007及以上版本产生的xlsx文件,xls和xlsx之间 ...

  8. 【转】python操作excel表格(xlrd/xlwt)

    [转]python操作excel表格(xlrd/xlwt) 最近遇到一个情景,就是定期生成并发送服务器使用情况报表,按照不同维度统计,涉及python对excel的操作,上网搜罗了一番,大多大同小异, ...

  9. Python 利用Python操作excel表格之xlwt介绍

    利用Python操作excel表格之xlwt介绍   by:授客 QQ:1033553122 直接上代码   案例1 #!/usr/bin/env python # -*- coding:utf-8 ...

随机推荐

  1. 计算机网络笔记Part1 概述

    总目录 1.计算机网络的功能.组成.分类 1.1功能 数据通信 资源共享 分布式处理 提高可靠性 负载均衡 1.2组成部分 硬件 软件 协议 1.3分类 按分布范围 广域网 WAN 城域网 MAN 局 ...

  2. javaSE面向对象编程

    面向对象编程 构造器 构造器就是和类名相同但无返回类型的方法. public class Person { //一个类即使什么都不写,它也会存在一个方法 //显示的定义构造器 String name; ...

  3. TCP文件上传实现

    TCP文件上传实现 服务端: package net.study; import java.io.*; import java.net.ServerSocket; import java.net.So ...

  4. [06 Go语言基础-包]

    [06 Go语言基础-包] 包 什么是包,为什么使用包? 到目前为止,我们看到的 Go 程序都只有一个文件,文件里包含一个 main 函数和几个其他的函数.在实际中,这种把所有源代码编写在一个文件的方 ...

  5. SpringBoot - 集成Auth0 JWT

    目录 前言 session认证与Token认证 session认证 Token认证 JWT简介 JWT定义 JWT数据结构 JWT的类库 具体实现 JWT配置 JWT工具类 测试接口 前言 说说JWT ...

  6. 温故知新,微软官方推荐的Visual Studio源代码管理之Git Ignore清单,开启新项目必备宝书

    什么是Git Ignore清单 https://git-scm.com/docs/gitignore 简单来说,在Git进行源代码管理中,我们可以通过建立.gitignore来实现一个忽略的黑名单管理 ...

  7. springboot:使用异步注解@Async的那些坑

    springboot:使用异步注解@Async的那些坑 一.引言 在java后端开发中经常会碰到处理多个任务的情况,比如一个方法中要调用多个请求,然后把多个请求的结果合并后统一返回,一般情况下调用其他 ...

  8. uniapp 实现信息推送(App)

    废话不多说直接上代码 以下代码需写在onlaunch生命周期内 onlaunch(){// onlaunch应用级生命周期 :当uni-app 初始化完成时触发(全局只触发一次) //#ifdef A ...

  9. java对xml节点属性的增删改查实现方法

    package vastsum; import java.io.File; import java.io.FileWriter; import java.util.Iterator; import o ...

  10. 高性能 C++ HTTP 客户端原理与实现

    一.什么是Http Client Http协议,是全互联网共同的语言,而Http Client,可以说是我们需要从互联网世界获取数据的最基本方法,它本质上是一个URL到一个网页的转换过程.而有了基本的 ...