通过openpyxl模块创建workbook时,无需本地事先创建好excel,它会直接创建一个新的excel文件

创建workbook时,会至少包含一个worksheet

注意:openpyxl模块只支持.xlsx,.xlsm,.xltx,.xltm格式

使用示例:

导入openpyxl模块的Workbook类

from openpyxl import Workbook 

创建workbook,并获取workbook中第一个sheet

wb = Workbook() #创建一个workbook
ws = wb.active #获取当前workbook的第一个worksheet,默认的索引值是0,它是可以改变的

创建worksheet

ws1 = wb.create_sheet() #在当前workbook的结尾处追加一个新的worksheet,名称是自动赋值的,如Sheet1,Sheet2,....
ws2 = wb.create_sheet(0) #在当前workbook的指定索引处追加一个新的worksheet,名称是自动赋值的,如Sheet1,Sheet2,....
ws1.title = "New Title1" #指定sheet名称为New Title1
ws2.title = "New Title2" #指定sheet名称为New Title2 ws3 = wb.create_sheet("MyNewSheet1") #在当前workbook的结尾追加一个新的worksheet,并指定sheet名称为MyNewSheet1
ws4 = wb.create_sheet("MyNewSheet2", 0) #在当前workbook的指定索引处追加一个新的worksheet,并指定sheet名称为MyNewSheet2

通过worksheet名称获取worksheet

ws5 = wb["MyNewSheet2"]
print(wb.sheetnames) #以列表形式输出该workbook中所有的worksheet
for sheet in wb:
print(sheet.title) #循环输出workbook的各个worksheet的名称

设定worksheet的颜色

ws.sheet_properties.tabColor = "1072BA"  #设定worksheet的颜色,设定值为RRGGBB颜色代码

拷贝当前worksheet

source = wb.active
target = wb.copy_worksheet(source)

注意:

  1) 不支持将一个worksheet从一个workbook拷贝至另一个workbook
  2) 如果当前workbook是read-only或者write-only模式,则也不支持worksheet的拷贝
  3) 拷贝worksheet时,不是所有的worksheet的内容都会被拷贝,具体可拷贝内容如下:
      a) 单元格,包括里面的值,样式,链接和注释式可以被拷贝
      b) 某些worksheet的属性,如维度,格式及属性可以被拷贝
      c) 以上其他的workbook和worksheet属性不会被拷贝,如图片,图形等

将当前设置保存到本地文件

wb.save("sample.xlsx") #以上处理都是在内存中的,save表示将最终的结果导出到本地文件上

创建workbook及相关操作的更多相关文章

  1. workbook数据相关操作

    访问单个单元格 c = ws['A4'] #返回单元格A4,如果单元格不存在,则会自动创建 ws['A4'] = 4 #为单元格A4赋值为4 d = ws.cell(row=4, column=2, ...

  2. SVN创建分支的相关操作

    目的是为了在项目中进行相应的功能操作的时候避免项目的报错还能进行还原 1.在相应的位置创建分支 项目过大的只在 功能的位置 进行创建分支 Angular的src 不要在其下面进行创建分支 他有严格的文 ...

  3. js 封装的自动创建表格的相关操作

    因为要做一个动态输入的表格,现在积累一下资料,在网上找了一些资料,经过总结是使用更加方便些,谁有更好的插件和封装的东西,请大家分享一下. <script type="text/java ...

  4. C# 对 Excel 的相关操作

    C# 对Excel的操作 学习自: 教练辅导 C# 对Excel的读取操作 我们需要额外添加引用: References 搜索Excel 这样我们的基础就添加完成了. 并且在using 中添加: us ...

  5. 从零自学Hadoop(20):HBase数据模型相关操作上

    阅读目录 序 介绍 命名空间 表 系列索引 本文版权归mephisto和博客园共有,欢迎转载,但须保留此段声明,并给出原文链接,谢谢合作. 文章是哥(mephisto)写的,SourceLink 序 ...

  6. 理解CSV文件以及ABAP中的相关操作

    在很多ABAP开发中,我们使用CSV文件,有时候,关于CSV文件本身的一些问题使人迷惑.它仅仅是一种被逗号分割的文本文档吗? 让我们先来看看接下来可能要处理的几个相关组件的词汇的语义. Separat ...

  7. Liunx下的有关于tomcat的相关操作 && Liunx 常用指令

    先记录以下liunx下的有关于tomcat的相关操作 查看tomcat进程: ps-ef|grep java (回车) 停止tomcat进程: kill -9 PID (进程号如77447) (回车) ...

  8. python操作mysql数据库的相关操作实例

    python操作mysql数据库的相关操作实例 # -*- coding: utf-8 -*- #python operate mysql database import MySQLdb #数据库名称 ...

  9. SQL语言和DML相关操作以及相应的运算符

    SQL 1.结构化查询语言 2.特点 a.第四代编程语言,更接近自然语言 b必须有数据库系统解释执行 c.对象名,关键字不区分大小写 d.字符串必须要用单引号引起来,不能用双引号 e.每条语句最后用分 ...

随机推荐

  1. C语言入门-类型定义

    一.自定义数据类型(typedef) c语言提供一个叫做typedef的功能来声明一个已有的数据类型的新名字,比如: typedef int length; 这样length成为了int类型的别名 这 ...

  2. MySQL数据库:合并结果集

    合并结果集 union----合并结果集 对合并后的结果集中的重复数据也会自动去重 select sName from students union select tName from Teacher ...

  3. Office2019新增哪些功能

    上一篇文章我们知道了office为什么没有2017/2018版本,那个是因为微软office是时隔三年一更新的软件,这不office2019就出来了.一款软件,只有不断的完善自身功能,进行不断的更新, ...

  4. JavaScript-----13.内置对象 Math()和Date()

    1. 内置对象 js对象分为3种:自定义对象(var obj={}).内置对象.浏览器对象. 前两种对象是js基础内容,属于ECMAScript,第三个浏览器对象是js独有的.讲js API的时候会讲 ...

  5. c++ 的namespace及注意事项

    前文 下文中的出现的"当前域"为"当前作用域"的简写 namepsace在c++中是用来避免不同模块下相同名字冲突的一种关键字,本文粗略的介绍了一下namesp ...

  6. sql语句复习(基础-提升-技巧-经典数据开发案例-sql server配置)

    1 基础 1.说明:创建数据库 CREATE DATABASE database-name charset=utf8 2.说明:删除数据库 drop database dbname 3.说明:备份sq ...

  7. BZOJ2127/LG1646 happiness 新建点最小割

    问题描述 BZOJ2127 LG1646 题解 和文理分科差不多 收益最大 -> 损失最小 -> 最小割 分别新建点表示互相关系就行了 \(\mathrm{Code}\) #include ...

  8. redis为什么是单线程而且速度快?

    redis支持的5种数据类型: 1.String(字符串) 2.List(数组或列表) 3.Set(集合) 4.Hash(哈希或字典) 5.ZSet(有序集合) 数据库的工作模式按存储方式可分为: 硬 ...

  9. Java 后台请求第三方系统接口详解

    //调用第三方系统接口 PrintWriter out = null; BufferedReader in = null; JSONObject jsonObject = null; Closeabl ...

  10. C#深入浅出之更多数据类型

    类型的划分        一个类型,要么是值类型,要么是引用类型.区别在于拷贝方式:值类型拷贝值,引用类型拷贝引用 值类型        值类型直接包含值.相当于每一个值类型都有自己单独的值: int ...