通过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. 520表白酷炫html

    html表白神器,动态浮动爱心,话不多说,直接看截图吧! 下面附上完整代码.别忘了点个赞哦! <!doctype html> <html> <head> <m ...

  2. 获取redis中所有的key,清空整个 Redis 服务器的数据

    获取 redis 中所有的 key 可用使用 *. redis 127.0.0.1:6379> KEYS * Redis Flushall 命令用于清空整个 Redis 服务器的数据(删除所有数 ...

  3. C++ std::vector emplace_back 优于 push_back 的理由

    #include <iostream> #include <vector> #include <chrono> #include <windows.h> ...

  4. dotnet core 调用electron来开发UI的探索

    先上仓库地址 https://github.com/lightszero/webwindow.netcore dotnet core 很喜欢,问题dotnet core 不包含GUI,经过一些尝试,觉 ...

  5. 使用脚本进行ansible批量主机的免密配置

    应用场景: 在应用ansible的实际情况中,有一个很现实的问题,ansible是需要对主机做ssh免密登陆的,而挨个对主机做免密是非常的繁琐的,挨个敲IP不仅非常的繁琐而且容易出错,为解决这个问题, ...

  6. 一、I/O模型之BIO

    I/O模型之BIO 基本介绍 Java BIO 就是传统的 Java IO 编程,其相关的类和接口再 java.io 包下 BIO(blocking I/O):同步阻塞,服务器实现模式为一个连接一个线 ...

  7. Oracle merge into的优势

    简介 Oracle merge into命令,顾名思义就是“有则更新,无则插入”,这个也是merge into 命令的核心思想,在实际开发过程中,我们会经常遇到这种通过两表互相关联匹配更新其中一个表的 ...

  8. Add an Editor to a Detail View 将编辑器添加到详细信息视图

    In this lesson, you will learn how to add an editor to a Detail View. For this purpose, the Departme ...

  9. 易优CMS:if的基础用法

    [基础用法] 名称:if 功能:条件判断,比switch判断标签更灵活些,视个人习惯而用. 语法: {eyou:if condition='($eyou.field.has_children > ...

  10. 微信小程序——表单验证插件WxValidate的二次封装(二)

    在上一篇博客<微信小程序——仿jqueryValidate表单验证插件WxValidate的二次封装>中,我将WxValidate做了再次封装,简化了初始规则数据的构造,但是当有错误时页面 ...