2016-08-13 4 views
1

Je suis novice en python, en essayant d'automatiser PowerPoint en utilisant win32com. Je suis incapable d'importer ou d'utiliser des constantes dans mes scripts. J'ai couru pour créer des bibliothèques. ci-dessous est le message d'erreur & script. Quelqu'un peut-il me dire comment importer des constantes?Impossible d'utiliser les constantes win32com pour automatiser le Powerpoint

Script:

import win32com.client 

Application =win32com.client.gencache.EnsureDispatch("PowerPoint.Application") 
Presentation = Application.Presentations.Add() 
Base = Presentation.Slides.Add(1, ppLayoutBlank) 

Messages d'erreur:

retraçage (appel le plus récent en dernier): Fichier "ppt.py", ligne 14, dans Base = (1 Presentation.Slides.Add , ppLayoutBlank) NameError: le nom 'ppLayoutBlank' n'est pas défini

+0

essayez www.pptxbuilder.com, il automatise vos pptxs –

Répondre

0

La méthode INTEROP que vous avez choisie dépend de l'interface de l'application à laquelle vous vous connectez.

Non défini signifie généralement qu'il n'y a pas de telle variable, mais Python soulève plus souvent NameError dans de tels cas. Donc ce qui se passe exactement ici est un peu flou. Donc, dépend de la version de PPoint sur la façon de communiquer avec lui.

Je vous conseille d'utiliser pywinauto au lieu et aller pour « brute_force », c.-à-émulent touches et/ou de clics, etc. sur les boutons à droite, etc. surplombantes

Parce que les noms de thous est peu moins susceptible de changer à travers les versions qu'une interface COM.

Microsoft a la mauvaise habitude de changer juste un peu l'interface, puis un programme cesse de fonctionner.

Si vous voulez insister sur win32com, vous devrez lire la documentation de PPoint pour une version spécifique (ou une version Office), et pour win32com pour votre version Python.

Vous devriez voir si vous devez démarrer un client COM ou s'il y a d'autres modifications que vous devez utiliser.