J'ai environ 25 présentations PowerPoint, chacune avec au moins 45 diapositives. Sur chaque diapositive est une question avec quatre réponses possibles et un bouton d'aide qui fournit un indice pertinent à la question. Chacune des réponses et le bouton d'aide est un bouton d'action PowerPoint qui lance une macro. Je tente de migrer toutes les questions/réponses/conseils dans une base de données SQL. J'ai travaillé avec Office.Interop avant de travailler avec Excel et Word et j'ai beaucoup d'expérience SQL DB, donc je ne prévois pas de problèmes avec l'extraction de la partie texte de la question et la réponse et de le mettre dans la base de données. Ce que je ne sais pas comment faire est donné un objet sur une diapositive -> obtenir le bouton d'action info -> Obtenir le nom de la macro -> et enfin obtenir le code vb de la macro. De là, je peux comprendre comment analyser quelle est la bonne réponse et quel est le texte de l'indice.Extrait le code VBA associé à une macro attachée à un bouton d'action dans PowerPoint
Toute aide ou idée serait grandement appréciée.
Donc je suppose que pour une situation "normale" cela fonctionnerait bien ... J'ai été capable d'utiliser la méthode ci-dessus pour extraire le nom de la macro pour l'indice car c'est son propre bouton d'action séparé. Pour une raison quelconque, la question et les réponses sont toutes dans la même forme (bloc de texte) ... et toutes les réponses sont aussi des boutons d'action. Je ne suis pas vraiment sûr de savoir comment cela fonctionne avec 4 boutons d'action qui sont tous les clics de souris dans la même forme. J'ai essayé d'interroger toutes les formes sur la diapositive juste pour m'assurer qu'elles ne se cachaient pas ailleurs mais je n'ai pas pu les trouver. Des idées? – Peter
@Patricker: Voici ce que je pense - ces boutons d'action sont regroupés avec une zone de texte. J'ai mis à jour le code ci-dessus qui aidera à obtenir les macros d'exécution pour les formes groupées. –
@Otaku ... ne ressemble pas à ça non plus. Voici les étapes à suivre pour reproduire mon problème: 1) créez une nouvelle présentation. Dans une zone de texte, tapez trois lignes de texte. 2) Ajoutez une macro à votre présentation. 3) Hissez l'une des lignes de texte à l'intérieur de la zone de texte, accédez à l'onglet Insertion sur le ruban et choisissez Action. 4) Choisissez l'option macro, puis choisissez la macro dans la liste. 5) répétez cette étape pour la troisième ligne (laissez la deuxième ligne comme texte normal). Maintenant, obtenir le vba pour voir l'action ... – Peter