分享

插上翅膀,让Excel飞起来——xlwings(三)

 ly88 2018-02-09

【剧情回顾】

  1. xlwings基本对象


    xlwings基本对象

    App相当于Excel程序,Book相当于工作簿。N个Excel程序则由apps表示,N个工作簿由books表示。

  2. 对工作簿的操作
#导入xlwings模块import xlwings as xw#新建工作簿,这里默认为新建了一个App,即打开Excel程序,并新建一个工作簿xw.Book()#引用工作簿xw.Book('工作簿3')# 引用工作簿也可以用booksxw.books['工作簿3’]#打开已有工作簿xw.Book(r'e:\myworkbook.xlsx')
  1. 对sheet以及Range的操作
import xlwings as xwwb=xw.Book()# 引用名字为'sheet2'的sheetsht=wb.sheets['sheet2']# 引用'sheet2'中的B1单元格rng=sht.range('B1')# 将B1单元格的值改为666rng.value=666

数据结构

  1. 一维数据
    python的列表,可以和Excel中的行列进行数据交换,python中的一维列表,在Excel中默认为一行数据
import xlwings as xwsht=xw.sheets.active# 将1,2,3分别写入了A1,B1,C1单元格中sht.range('A1').value=[1,2,3]# 将A1,B1,C1单元格的值存入list1列表中list1=sht.range('A1:C1').value# 将1,2,3分别写入了A1,A2,A3单元格中sht.range('A1').options(transpose=True).value=[1,2,3]# 将A1,A2,A3单元格中值存入list1列表中list1=sht.range('A1:A3').value
  1. 二维数据
    python的二维列表,可以转换为Excel中的行列。二维列表,即列表中的元素还是列表。在Excel中,二维列表中的列表元素,代表Excel表格中的一列。例如:
# 将a1,a2,a3输入第一列,b1,b2,b3输入第二列list1=[[‘a1’,'a2','a3'],['b1','b2','b3']]sht.range('A1').value=list1
运行结果
# 将A1:B3的值赋给二维列表list1list1=sht.range('A1:B3‘).value
  1. Excel中区域的选取表格
# 选取第一列rng=sht. range('A1').expand('down')rng.value=['a1','a2','a3']
第一列
# 选取第一行rng=sht.range('A1').expand('right')rng=['a1','b1']
第一行
# 选取表格rng.sht.range('A1').expand('table')rng.value=[[‘a1’,'a2','a3'],['b1','b2','b3']]
表格

结束

  • 本文首先简单介绍了,通过Python运用xlwings模块,对Excel工作簿、工作表和单元格的操作。
  • 再介绍了xlwings,如何对Excel表格的行和列写入和引用数据
  • 通过二维或者一维列表对Excel工作表的数据进行写入或者引用,既简化了代码,也提高了程序的效率。因为python读写Excel表格的速度,原小于python程序自身的运行速度。

参考资料
xlwings官网
插上翅膀,让Excel飞起来——xlwings(一)
插上翅膀,让Excel飞起来——xlwings(二)

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约