设置为“ False”时,python下win32com软件包中Powerpoint应用程序的visible属性不起作用。当visible属性设置为true并在给定代码段执行后打开pptx时,它就起作用了。我不希望打开PPT。您能否在给定的代码中提出一些更正建议。执行以下代码时,出现以下错误。
ExcelApp = win32com.client.Dispatch("Excel.Application")
ExcelApp.Visible = False
workbook = ExcelApp.Workbooks.open(r'C:\Users\aju.mathew.thomas\Desktop\PBC\Pepsi\PBC\Performance Reports\2019\PPT\PerformanceReportMetrics.xlsx')
worksheet = workbook.Worksheets("Summary")
excelrange = worksheet.Range("A1:R20")
PptApp = win32com.client.Dispatch("Powerpoint.Application")
PptApp.Visible = False
z = excelrange.Copy()
PPtPresentation = PptApp.Presentations.Open(r'C:\Users\aju.mathew.thomas\Desktop\PBC\Pepsi\PBC\Performance Reports\2019\PPT\Performance Reports.pptx')
pptSlide = PPtPresentation.Slides.Add(1,11)
title = pptSlide.Shapes.Title
title.TextFrame.TextRange.Text = 'Metrics Summary'
pptSlide.Shapes.PasteSpecial(z)
PPtPresentation.SaveAs(r'C:\Users\aju.mathew.thomas\Desktop\PBC\Pepsi\PBC\Performance Reports\2019\PPT\Performance2.pptx',1)
workbook.Save()
workbook.Close(True)
错误消息:
错误:PptApp.Visible = False,自我。 oleobj .Invoke(entry.dispid,0,invoke_type,0,value) pywintypes.com_error:(-2147352567,'发生异常。',(0,'Microsoft PowerPoint','Application.Visible:无效的请求。不允许隐藏应用程序窗口。','',0,-2147188160),无)
答案 0 :(得分:0)
添加
WithWindow=False
在打开的语句中。 像这样:
PPtPresentation = PptApp.Presentations.Open(r'C:\demo.pptx', WithWindow=False)