我正在尝试使用python 3与PowerPoint的自定义加载项进行交互。特别是think-cell,一种图表工具。我只需要使用此处记录的一个功能:https://www.think-cell.com/en/support/manual/exceldataautomation.shtml
我可以成功地使用pywin32连接到powerpoint并获得对该插件的引用
import win32com.client as win32
def ppt():
return win32.gencache.EnsureDispatch('PowerPoint.Application')
def excel():
return win32.gencache.EnsureDispatch('Excel.Application')
e = excel()
p = ppt()
thinkcell = p.COMAddIns("thinkcell.addin").Object
但是,当我调用thinkcell.UpdateChart(slide, "Chart24", r)
(在其他位置定义了幻灯片和r时,我得到:AttributeError: <unknown>.UpdateChart
。
我相信这意味着问题在于,没有为think-cell插件编写任何python接口,或者未以该对象可以调用其功能的方式注册该插件。
我该如何解决?如果我需要编写一个允许调用UpdateChart的接口,那会是什么样?
您是否尝试过以下简单操作:
p.Visible = True
presentation=p.Presentations.Add()
slide = presentation.Slides.Add(1, 12)
myDiamond = slide.Shapes.AddShape(4, Top=100,Left=100, Width=20, Height=20)
presentation.SaveAs(“C:\\Temp\\myPowerPoint”,1)
另外,您是否尝试过:
p = win32com.client.Dispatch("PowerPoint.Application")