OVH Cloud OVH Cloud

powerpoint et vba

3 réponses
Avatar
Pascal PAUGOY
Bonjour

J'utilise régulièrement vba avec microsoft office. Parcontre je suis novice
en programmation vb sous ppt. Je suis à la recherche de source d'info
(site).

Quelle est la syntaxe pour faire référence à la diapo en cours (je n'ai pas
trouvé d' " ActiveSlide"). De plus comment accéder et modifer les noms des
différents objets placé sur une diapo

D'avance Merci.

Pascal

3 réponses

Avatar
Philmo
Bonjour Pascal,

Quelle est la syntaxe pour faire référence à la diapo en cours (je n'ai
pas

trouvé d' " ActiveSlide"). <


Regarde le code de la question "RE VBA simple" sur la liste, tu trouveras
quelque chose de simple !

De plus comment accéder et modifer les noms des
différents objets placé sur une diapo


Un message de "Anette" sur la liste exposait un code bien utile sur le
changement du nom des objets.
C'est une macro que l'on peut intégrer dans un bouton. Cependant je trouve
que çà ne fonctionne pas toujours très bien ! Il faudrait que je cherche
pourquoi ! Si tu ne le trouves pas dis le nous !

Bien cordialement
Philippe ^|^

Avatar
hm15
Bonjour Pascal,

pour ta question 1 : tu trouveras quelques éléments d'information concernant
le VBA PowerPoint aux adresses suivantes :
http://www.mvps.org/skp/vba.htm
ou ici :
http://officerone.tripod.com/vba.html

Pour ta question 2 : http://officerone.tripod.com/vba/get_active_slide.html

Pour ta question 3 : sauf erreur, on ne peut toujours pas renommer les
objets *directement* dans
PowerPoint comme on peut le faire avec Excel si simplement.

Pour renommer un objet, voici un petit bout de code à mettre en oeuvre :
- appuie sur <Alt><F11> pour accéder à la fenêtre Visual Basic Editor
- menu Insertion | Module
- copie/colle les lignes suivantes :

Sub ChangeNomObjet()
strNouveauNom = InputBox("Donnez un nom à l'objet sélectionné")
With ActiveWindow.Selection.ShapeRange
.Name = strNouveauNom
End With
End Sub

- pour l'utiliser, sélectionne un objet
- menu Outils | Macro | Macros
- exécute la macro "ChangeNomObjet"

Tu peux affiner en créant un bouton dans une de tes barres d'outils pour
exécuter la macro plus facilement.

Enfin, si tu veux connaître le nom des objets à tout moment :
- ajoute l'outil "Sélectionner plusieurs objets" dans ta barre d'outils
(menu Personnaliser, onglet [Commandes], catégorie Dessin)
- quand tu cliques sur cet outil, une boîte de dialogue affiche la liste des
objets présents sur ta diapo.

Cordialement,

Annette
---------------------------------------------------------------------------
www.horizon-micro.com


"Pascal PAUGOY" a écrit dans le message de news:
4017830a$0$6974$
Bonjour

J'utilise régulièrement vba avec microsoft office. Parcontre je suis
novice

en programmation vb sous ppt. Je suis à la recherche de source d'info
(site).

Quelle est la syntaxe pour faire référence à la diapo en cours (je n'ai
pas

trouvé d' " ActiveSlide"). De plus comment accéder et modifer les noms des
différents objets placé sur une diapo

D'avance Merci.

Pascal





Avatar
Philmo
Bonjour Pascal,

Quelle est la syntaxe pour faire référence à la diapo en cours (je n'ai
pas

trouvé d' " ActiveSlide").


Voilà pour toi !

Sub NumeroDiapoActive()
' Définition de la variable N comme entier
Dim N As Integer
'N est le numéro de la diapo. active dans la présentation
N = ActivePresentation.SlideShowWindow.View.Slide.SlideIndex
'Une boîte de dialogue l'affiche
MsgBox "L'index de la diapo. active est:" & N
End Sub

Bien sûr, tu peux récupérer N comme tu veux !

Bien cordialement
Philippe ^|^