Bonjour,
j'ai une idée assez précise de ce que je voudrais, mais je n'ai encore jamais codé en VBA et j'ai du mal à voir si cela vaut le coup que je me forme. Au passage, je suis assez nulle en Excel et PowerPoint aussi.
Je voudrais donc vous décrire ce que je voudrais et que vous me disiez si vous pensez que c'est faisable avec Excel, PowerPoint et VBA et que vous m'expliquiez si vous voyez des difficultés évidentes... Il est possible que la conclusion soit que je dois changer ce que je veux, ou changer de logiciel (en fait, la seule chose qui me force à rester sur Excel et PowerPoint et pas programmer moi-même ce que je veux via Python et LaTeX/Beamer, par exemple, c'est le besoin de faire de beaux diagrammes en camembert et d'avoir une facilité pour gérer l'aspect visuel du truc)... En fait, j'ai une idée de comment faire, mais je ne sais pas comment la mettre en oeuvre, et j'ai beaucoup de questions à poser ; je ne sais pas encore si je dois les poser dans le forum Excel, le forum PowerPoint... Enfin bref, je suis un peu perdue et le but de ce post-ci serait d'y voir plus clair.
Ce que je voudrais
Je voudrais automatiser la création de plusieurs fichiers PowerPoint, tous de même "structure", à partir de divers fichiers Excel.
Plus précisément, chaque fichier PowerPoint contiendrait un certain nombre de pages, chacune ayant une mise en page propre (car ne contenant pas le même genre de choses ; il y aurait une page de titre, une page de blabla qui ne change pas d'un fichier à un autre, une page de présentation de certaines données qui changent d'un fichier à un autre) et que le contenu de tous les champs soit extrait quelque part dans un fichier Excel.
En outre, comme les fichiers Excel contenant ces données n'existent pas encore, je voudrais créer une "macro" qui, à partir d'un fichier Excel structuré exprès pour, fabrique de A à Z un fichier PowerPoint selon les règles que j'ai envie d'imposer.
Un exemple de question que je me pose (comme ça vous pouvez voir à quel point j'en suis...)
Pour prescrire la forme du fichier PowerPoint produit, est-ce qu'il faut nécessairement programmer cette forme, comme on le ferait avec du HTML et CSS pour ensuite la remplir (c'est-à-dire, écrire un code du style
- j'écris du code qui ne veut rien dire parce que je ne connais pas VBA mais j'espère que ça se comprend - qui aurait pour effet de dire au programme : "je veux que le fichier PowerPoint que tu fabriques ait, dans la première diapo, un champ de texte, en position (100,200), et dont le contenu doit être cherché dans la cellule B17 du fichier excel qui s'appelle fichierExcel.xls") ?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 monPowerPoint.slide1.creerChampTexte = "champTitre" monPowerPoint.slide1.champTitre.position = (100,200) monPowerPoint.slide1.champTitre = recupererTitreDansFichierExcel(fichierExcel.xls,B17)
Ou alors, est-ce qu'il y aurait quelque chose de plus user-friendly, qui consisterait par exemple à
1) Créer un fichier PowerPoint (qu'on pourrait appeler le "modèle") avec la souris comme on le ferait habituellement dans PowerPoint sans programmer, en positionnant les trucs là où on les veut, en mettant les bonnes polices, etc. bref qui aurait donc exactement la forme voulue des fichiers que l'on cherche à créer.
2) Donner des noms de variables à chacun des champs contenu dans le "modèle".
3) Ecrire un code VBA dans Excel assez court, disant "fabrique un fichier PowerPoint selon le modèle précédent, et, pour telle variable, tu mettras dans le champ du fichier PowerPoint correspondant la valeur de telle cellule, etc.".
Conclusion
Voilà, j'ai conscience que ce je dis peut-être fouillis, n'hésitez pas à me dire si vous ne comprenez pas. Je vous remercie pour votre aide !
Partager