用xlwings创建Excel对象
使用xlwings包之前先导入它。下面在Python Shell窗口导入xlwings包。
code.python
>>> import xlwings as xw
创建一个Excel应用app:
code.python
>>> app=xw.App()
用books对象的add方法创建一个工作簿对象bk:
code.python
>>> bk=xw.books.add()
用sheets对象的add方法创建一个工作表对象sht:
code.python
>>> sht=bk.sheets.add()
设置工作表中A1单元格的值为10:
code.python
>>> sht.range("A1").value=10
xlwings的两种编程方式
xlwings包将win32com包一些常用的功能进行了二次封装,可以使用跟win32com不一样的语法,不太常用的功能用API的方式进行调用。实际上,使用API方式几乎可以完成所有的编程。所以,实际上xlwings包提供了两种编程方式,即用封装后的语法进行编程称为xlwings方式,还有一种就是xlwings API方式。例如要选择工作表中的A1单元格,可以使用这两种方式进行编程:
【xlwings】
code.python
>>> sht=bk.sheets(1)
>>> sht.range("A1").select()
【xlwings API】
code.python
>>> sht=bk.sheets(1)
>>> sht.api.Range("A1").Select()
注意,在Python中,变量、属性和方法的名称是有大小写区分的。在xlwings方式下,range属性和select方法都是小写的,是重新封装后的写法。在xlwings API方式下,在sht对象后面引用api,后面就可以使用VBA中的引用方式,Range属性和Select方法首字母都是大写。所以使用API方式可以使用大多数VBA的编程代码,懂VBA编程的同学可以很快就能上手。当然,使用xlwings方式会有一些编码、效率方面的好处,有一些扩展的功能。