Python xlwt 模块编辑 Excle 表格 基础 2 冻结窗口、设置加密保护、打印设置等

    • 前言:
    • 1、设置冻结窗口
    • 2、sheet表常用显示设置
    • 3、设置表格保护及密码:
    • 4、设置默认打印格式
      • 4.1、基础设置:
      • 4.2、页眉页脚设置:
      • 4.3、设置页边距:
      • 4.4、设置默认纸张、打印方向等:
      • 4.5 设置打印区域:
      • 4.6、其他设置:
    • 结尾:
  • 【Python与Office】专栏

前言:

上一篇博客对Python 的第三方模块 xlwt 对Excel表格的一些基础操作如:新建工作簿、增加sheet表、插入位图等 进行了讲解。

本篇博客介绍 xlwt 模块设置 Excel表格文件的窗口显示样式、默认打印格式,主要内容包括:

1. 设置冻结窗口;
2. 表格的常用显示设置;
3. 设置文档保护及密码;
4. 表格打印设置详解。

1、设置冻结窗口

Excel表格对于数据的显示非常直观,其冻结窗口的设置就是对用户阅读数据非常友好的一个功能。
我们先写如下一个代码,创建一个Excel表格,并写入数据:

# 导入模块
import xlwtwork_book = xlwt.Workbook()
work_sheet = work_book.add_sheet('Test')
w2 = work_book.add_sheet('T2')z = [[r,c] for r in range(20) for c in range(20)]
[l.append(str(i)) for i,l in enumerate(z)]
for info in z:work_sheet.write(info[0],info[1],info[2])w2.write(info[0],info[1],info[2])# 保存文件
work_book.save('Test2.xls')

我们在当前工作路径下创建了一个 Test2.xls 表格文件,文件中有Test,T2两个sheet表,表中数据一样。

文件截图:

后续我们对 Test2.xls 文件的 Test sheet 对象进行操作,大家可和 T2 sheet 对象进行对比,看看一些设置的效果。

设置冻结窗口:

# 设置冻结窗口
# 设置冻结为真
work_sheet.set_panes_frozen('1')
# 水平冻结
work_sheet.set_horz_split_pos(2)
# 垂直冻结
work_sheet.set_vert_split_pos(1)

解析:
设置冻结窗口需先将sheet表的冻结属性设置为真,然后再对水平、垂直需冻结行数、列数进行设置。

上面的代码将表格文件的Test sheet 的前两行、第一列设置冻结窗口,效果如下:

2、sheet表常用显示设置

1、设置隐藏行、列标签(默认为显示):

work_sheet.set_show_headers(0)

2、设置隐藏网格线(默认为显示):

work_sheet.set_show_grid(0)

3、设置表格右排列(默认为左排列):

work_sheet.set_cols_right_to_left(1)

设置后的表格截图:


可以看到:sheet表没有了ABCD…行标签、1 2 3 4…列标签,网格线也被隐藏。数据开始方向变为,从右到左。

3、设置表格保护及密码:

设置文档保护及密码,不允许修改(默认不保护):

work_sheet.set_protect(1)
work_sheet.set_password('123456')

效果图:

4、设置默认打印格式

xlwt 模块提供了设置 sheet 表默认打印样式的方法,而这一部分资料在网上基本上找不到…。

4.1、基础设置:

设置打印行、列标签(默认不打印):

work_sheet.set_print_headers(1)

设置打印网格线(默认不打印):

work_sheet.set_print_grid(1)

设置表格数据打印垂直居中(默认不居中):

work_sheet.set_print_centered_vert(1)

设置表格数据打印水平不居中(默认居中):

work_sheet.set_print_centered_horz(0)

上述四种设置后,表格打印预览:

4.2、页眉页脚设置:

日常工作中在Excel表格打印时,一般不会去设置表格文件的页眉页脚,但是 xlwt 模块还是提供了设置页眉页脚的方法:

设置页眉(默认为页码数):

work_sheet.set_header_str('TestPageNO. &P'.encode())

设置页脚(默认为文件名称):

work_sheet.set_footer_str('FileName:&F'.encode())

页眉打印预览:


页脚打印预览:

注:这里的眉设置的 ‘TestPageNO. &P’.encode() 中 &P 代表页码数,页脚中的 &F 表示,不包含文件路径的文件名称。

其他的代码还有:

Command         Contents
&&              The "&" character itself
&L              Start of the left section
&C              Start of the centred section
&R              Start of the right section
&P              Current page number
&N              Page count
&D              Current date
&T              Current time
&A              Sheet name (BIFF5-BIFF8)
&F              File name without path
&Z              File path without file name (BIFF8X)
&G              Picture (BIFF8X)
&B              Bold on/off (BIFF2-BIFF4)
&I              Italic on/off (BIFF2-BIFF4)
&U              Underlining on/off
&E              Double underlining on/off (BIFF5-BIFF8)
&S              Strikeout on/off
&X              Superscript on/off (BIFF5-BIFF8)
&Y              Subscript on/off (BIFF5-BIFF8)

比如我们想要设置:页眉为空,页脚为sheet名称 + 当前日期+ 页码。

# 设置页眉为空
work_sheet.set_header_str(''.encode())
# 设置页脚
work_sheet.set_footer_str('NAME:&A DATE:&D No.: &P'.encode())

打印预览:

4.3、设置页边距:

设置左边距(默认0.3)、右边距(默认0.3):

work_sheet.set_left_margin(0.5)
work_sheet.set_right_margin(0.5)

设置上边距(默认:0.61)、下边距(默认:0.37):

work_sheet.set_top_margin(0.5)
work_sheet.set_bottom_margin(0.5)

设置页眉边距(默认:0.1)、页脚边距(默认:0.1):

work_sheet.set_header_margin(0.5)
work_sheet.set_footer_margin(0.5)
4.4、设置默认纸张、打印方向等:

将打印纸张设置为A3(默认A4,9):

work_sheet.set_paper_size_code(8)

常用纸张编码代号:

8       A3                      297mm x 420mm
9       A4                      210mm x 297mm
10      A4 small                210mm x 297mm
11      A5                      148mm x 210mm
12      B4 (JIS)                257mm x 364mm
13      B5 (JIS)                182mm x 257mm
33      B4 (ISO)                250mm x 353mm
34      B5 (ISO)                176mm x 250mm
35      B6 (ISO)                125mm x 176mm
66      A2                      420mm x 594mm
70      A6                      105mm x 148mm

设置横向打印(默认纵向打印):

work_sheet.set_portrait(0)

设置页面缩放比例为90% (默认100%):

work_sheet.set_print_scaling(90)

设置是否单色打印(默认单色):

work_sheet.set_print_colour(0)

以上设置,打印预览:

4.5 设置打印区域:

设置垂直打印区域:

work_sheet.set_vert_page_breaks([[5,0,0],[11,0,0]])

注:第一页为5列,第二列为6列。

设置水平打印区域:

work_sheet.set_horz_page_breaks([[6,0,0],[12,0,0]])

注:第一页为6行,第2页为6行。

上述设置,分页预览图:

4.6、其他设置:

以草稿质量打印(默认非草稿):

work_sheet.set_print_draft(1)

草稿打印,打印出来的效果会很模糊,不常用。

设置打印批注、批注在文档结尾显示(默认不打印批准):

work_sheet.set_print_notes(1)
work_sheet.set_print_notes_at_end(1)

设置打印单元格错误显示值为:#N/A(默认打印显示值):

work_sheet.set_print_omit_errors(3)

0 设置打印显示值;
1 设置为空白;
2 设置为–;
3 设置为:#N/A。

设置打印质量为600 dpi (默认300dpi):

work_sheet.set_print_hres(600)
work_sheet.set_print_vres(600)

结尾:

以上就是本篇博客全部内容,感谢阅读。

下一篇博客内容为:介绍 xlwt 模块设置 Excel表格文件 单元格格式、字体格式、对齐方式、边框及填充等 方法。

【Python与Office】专栏

该专栏会对 Python 的第三方模块,如:xlwt,xlrd,python-docx等,操作 Office 办公软件(Word Excel PPT)的方法进行详细讲解。同时也会搭配一些实例演练,一方面强化知识点的理解与运用,另一方面也希望能起到,引导读者进行思考:如何用 python 提高 offic 办公软件办公效率的作用。

感兴趣的朋友,可以点个 关注收藏 。如在博客中遇到任何问题或想法,可留言或私信。

创作不易,你的支持是我最大的动力,感谢 !

Python xlwt 操作 excel 表格基础(二):冻结窗口、设置加密保护、打印设置等相关推荐

  1. Python xlrd 读取 Excel 表格基础(一):获取sheet、行、列对象,读取数据类型等

    Python xlrd 读取 Excel 表格基础 一:按行.按列读取Excel数据内容 前言: 1.获取工作簿.sheet对象 2.获取sheet表中行.列对象 3.读取sheet对象中所有数据 4 ...

  2. python xlwt操作excel

    python xlwt操作excel posted on 2018-04-18 14:46 秦瑞It行程实录 阅读(...) 评论(...) 编辑 收藏 转载于:https://www.cnblogs ...

  3. Python Pandas操作Excel表格文件:创建新表格,追加数据

    前言: python操作excel表格文件的增删读写,一般需要用到的第三方库有xlwt,xlrd.xlrd负责读取excel,xlwt负责写入excel文件.这种操作方法比较繁琐,效率还不错,通俗易懂 ...

  4. python openpyxl操作Excel表格

    原创:未经允许不得转载,转载需标明出处 打算分为两个部分: 第一部分为:操作Excel表格 第二部分为:操作Excel图表 现在发布为第一部分内容 在最近的项目中的使用到了提取Android帧率日志, ...

  5. Python自动化操作Excel表格

    目录 一.Python打开及读取Excel表格内容 二.Python向Excel表格中写 三.批量调整字体.样式 四.编程生成Excel内图表 一.Python打开及读取Excel表格内容 #打开以及 ...

  6. 【转】经典!python中使用xlrd、xlwt操作excel表格详解

    最近遇到一个情景,就是定期生成并发送服务器使用情况报表,按照不同维度统计,涉及python对excel的操作,上网搜罗了一番,大多大同小异,而且不太能满足需求,不过经过一番对源码的"研究&q ...

  7. python中使用xlrd、xlwt操作excel表格详解

    近遇到一个情景,就是定期生成并发送服务器使用情况报表,按照不同维度统计,涉及python对excel的操作,上网搜罗了一番,大多大同小异,而且不太能满足需求,不过经过一番对源码的"研究&qu ...

  8. 通Python实现操作 excel表格 工作效率提升百倍

    一.概述 操作 excel 是程序员经常要遇到的场景.因为产品.运营的数据都是以这种格式存储.所以,当程序员拿到这些数据肯定要解析,甚至需要把结果输出成 excel 文件. 下面就介绍如果用 Pyth ...

  9. python操作excel表格-python如何操作excel表格

    Python对Excel的读写主要有xlrd.xlwt.xlutils.openpyxl.xlsxwriter几种. python学习网,大量的免费python视频教程,欢迎在线学习! 1.xlrd主 ...

  10. python 编辑excel需要什么包_Python 中操作EXCEL表格的包

    今天,马云爸爸又来贡献金句了,比王健林公公一亿一个小目标还高,"一个月挣一二十个亿很难受!!!",作为在传统企业主要为电商部门提供数据分析的数据分析师,体验太深刻了. 双11前后, ...

最新文章

  1. 算法:快速排序实现 定制比较函数
  2. GaitSet:通过交叉视角步态识别
  3. 记一次关于MySQL与PHP的蠢事
  4. 懒人必备:.NetCore快速搭建ELK分布式日志中心
  5. 已知二叉树的前序遍历、中序遍历或者中序遍历、后序遍历求二叉树结构的算法
  6. copy_to_user和copy_from_user
  7. php 取url根域名,php中取得URL的根域名的代码
  8. Cocos Creator Ui系统
  9. MySQL调用mongodb事务回滚_SpringBoot整合MongoDB,在多数据源下实现事务回滚。
  10. 数据聚合Spring Data MongoDB:嵌套结果
  11. Flutter Mac iOS 环境配置
  12. 用ShopEx网上开店之安装Zend插件
  13. 协方差矩阵的详细说明
  14. 简单实现 C# TabControl 不显示选项卡标题
  15. InstallShield中通过修改注册表关闭Vista/Windows 7的UAC
  16. Android布局之屏幕自适应
  17. 宏转录组方法_中山大学医学院施莽教授学术讲座:宏转录组方法在病原生物学领域的应用...
  18. JSON数组转LIST集合的两种方法
  19. Python 编写自动化工具
  20. php 二级导航,导航下面的二级导航,显示和隐藏,

热门文章

  1. Android中插件化实现的原理,宿主app运行插件中的类 (一)
  2. 关于git reset --hard这个命令的惨痛教训
  3. Android 阻止AlertDialog dismiss
  4. 文本学习-《背影》-朱自清
  5. 记一次走心One 2 One沟通
  6. php FPDF类库应用实现代码
  7. 芯片常见的三种封装形式
  8. 锤子手机浏览器无法加载某个js的问题
  9. 【v-charts】折线图
  10. python特殊函数_SciPyTutorial-特殊函数