Bonjour à tous,
Je m'adresse aujourd'hui à la communauté à propos d'un problème assez compliqué puisqu'il s'agit de jongler entre Excel et Powerpoint au sein d'une macro !
C'est une macro assez simple dans son fonctionnement, qui boucle sur une plage de données Excel pour remplir un tableau PPT. Rien de bien extraordinaire, d'ailleurs la macro fonctionne parfaitement. Le problème est ailleurs : la macro démarre dans Powerpoint, le focus passe dans Excel (sélection de la plage via InputBox), les cellules se remplissent, mais impossible de remettre Powerpoint en application active et au premier plan une fois cette macro-commande terminée !
J'ai parcouru les forums (dont celui-ci bien sur 🙂), et je pense avoir essayé beaucoup de choses, sans succès...
J'ai notamment essayé:
- Application.Active (enfin les méthodes apparentées je n'ai plus le nom exact en tête)
- ActivateMicrosoftApp
- AppActivate
- d'autres fonctions Windows (SetForegroundWindow, Shell...)
Je n'ai pas réussi à faire passer cette fichue diapositive au premier plan, donc je dois rater quelque chose. Avec ActivateMicrosoftApp je termine bien sur Powerpoint mais une nouvelle instance s'ouvre, c'est comme s'il considérait que le logiciel n'était pas déjà ouvert...
Je m'en remets à vous pour m'aiguiller sur ce dernier détail qui me fait tourner en bourrique !
Merci beaucoup, et bonnes fêtes à tous 🙂
PS : Le dossier ZIP comprend le fichier PPTM ainsi qu'un fichier Excel (sans macro) d'où copier les données.
Je m'adresse aujourd'hui à la communauté à propos d'un problème assez compliqué puisqu'il s'agit de jongler entre Excel et Powerpoint au sein d'une macro !
C'est une macro assez simple dans son fonctionnement, qui boucle sur une plage de données Excel pour remplir un tableau PPT. Rien de bien extraordinaire, d'ailleurs la macro fonctionne parfaitement. Le problème est ailleurs : la macro démarre dans Powerpoint, le focus passe dans Excel (sélection de la plage via InputBox), les cellules se remplissent, mais impossible de remettre Powerpoint en application active et au premier plan une fois cette macro-commande terminée !
J'ai parcouru les forums (dont celui-ci bien sur 🙂), et je pense avoir essayé beaucoup de choses, sans succès...
J'ai notamment essayé:
- Application.Active (enfin les méthodes apparentées je n'ai plus le nom exact en tête)
- ActivateMicrosoftApp
- AppActivate
- d'autres fonctions Windows (SetForegroundWindow, Shell...)
Je n'ai pas réussi à faire passer cette fichue diapositive au premier plan, donc je dois rater quelque chose. Avec ActivateMicrosoftApp je termine bien sur Powerpoint mais une nouvelle instance s'ouvre, c'est comme s'il considérait que le logiciel n'était pas déjà ouvert...
Je m'en remets à vous pour m'aiguiller sur ce dernier détail qui me fait tourner en bourrique !
Merci beaucoup, et bonnes fêtes à tous 🙂
PS : Le dossier ZIP comprend le fichier PPTM ainsi qu'un fichier Excel (sans macro) d'où copier les données.