Excel python COM对象文档?

2024-05-15 21:29:50 发布

您现在位置:Python中文网/ 问答频道 /正文

我想使用Python和COM来操作Excel文件中的数据和公式。我在python中查看了几个模块,但还没有找到读取公式的支持。所以我不得不使用COM。我不知道该怎么称呼它,但是否有类似于python、COM for excel上所有可用类和方法的文档。这里有一些示例代码,但我似乎找不到任何详尽的文档来说明我想做的事情。

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

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

sel = xl.Selection

当我在xl之后点击TAB时,上面的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.

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


Tags: 方法in文档comclienttruelinenot
2条回答

我们最近一直在努力处理这些接口。尝试使用帮助页on the Microsoft website

这些例子都是用C#/VB.NET编写的,所以如果你知道其中一种语言的话会有帮助。。。玩得高兴!:)

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

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

我也不知道有任何PythonCOM文档,但是这个接口几乎可以将Visual Basic属性转换为Python,所以您只需遵循VBA文档,在许多情况下,VBA代码几乎是逐字工作的,当然您必须将VBA样板和控制结构更改为它们的Python等价物。

相关问题 更多 >