Excel python COM对象的文档?

时间:2012-05-08 08:11:50

标签: python excel com documentation

我想使用Python和COM来处理Excel文件中的数据和公式。我在python中查看了几个模块,但我还没有找到支持读取公式。所以我被迫使用COM。我不知道该怎么称它,但是有些东西就像python上的所有类和方法的文档,excel的COM。这里和那里有一些示例代码,但我似乎无法找到任何详尽的文档来说明我想要做的事情。

import win32com
import win32com.client
xl = win32com.client.Dispatch("Excel.application")
xl.__doc__

我认为最后一行会打印Excel应用程序的方法或文档列表

sel = xl.Selection
当我在xl之后点击TAB时,

上面的Selection()方法不会显示。我只知道有一个Selection方法,因为我从pyxll示例模块中读取它。所以我假设有更多的方法没有包含在TAB菜单中。

sel.Value = "Hello!"
sel.font.bold = true

Traceback (most recent call last):
File "<pyshell#8>", line 1, in <module>
sel.font.bold = true
NameError: name 'true' is not defined

sel.font.bold = 1
sel.font = "Constantia"

Traceback (most recent call last):
File "<pyshell#10>", line 1, in <module>
sel.font = "Constantia"
File "C:\Python27\lib\site-packages\win32com\client\dynamic.py", line 570, in  __setattr__
raise AttributeError("Property '%s.%s' can not be set." % (self._username_, attr))
AttributeError: Property '<unknown>.font' can not be set.

所以我猜这个,但我想学习一个适当的文档,所以我知道我可以使用哪些对象/方法。有人能指出我正确的方向吗?提前谢谢!

2 个答案:

答案 0 :(得分:2)

我们最近在努力解决这些问题。尝试使用帮助页面on the Microsoft website

示例在C#/ VB.NET中,如果您了解其中一种语言,它会有所帮助......玩得开心! :)

答案 1 :(得分:0)

True区分大小写:sel.font.bold=True有效。

可以将字体设置为Constantia,如下所示:sel.font.Name="Constantia"

我也不知道任何PythonCOM文档,但是界面几乎将Visual Basic属性转换为Python,所以你可以按照VBA文档,在很多情况下,VBA代码几乎是逐字的,当然你有将VBA样板和控件结构更改为Python等价物。