1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56
| '=======================================================================================
' Procedure : Module1
' Auteur : Philippe JOCHMANS - http://starec.developpez.com
' Date : 22/07/2008
' Commentaires : Faire défiler une texte dans une zone de texte
'=======================================================================================
Option Explicit
' déclaration des variables
' API pour la temporisation
Declare Sub Sleep Lib "kernel32" (ByVal dwMilliseconds As Long)
Public i As Integer 'cette variable va permettre de faire un test pour arrêter le défilement
Public Sub DefilerTexte()
'=======================================================================================
' Procedure : DefilerTexte
' Auteur : Philippe JOCHMANS - http://starec.developpez.com
' Date : 22/07/2008
' Commentaires : Nous allons retrouver ici la procédure de défilement du texte
'=======================================================================================
' déclaration des variables
Dim sld As slide ' diapositive où se trouve la zone de texte
Dim shpTexte As Shape ' l'objet Shape qui correspond à la zone de texte
Dim strTexte As String ' le texte qui sera mit dans la zone
ActivePresentation.SlideShowWindow.View.GotoSlide 2
DoEvents
' affectation
Set sld = ActivePresentation.Slides(2)
Set shpTexte = sld.Shapes("LaZone")
strTexte = " Le texte qui défile dans la zone de texte"
shpTexte.TextFrame.TextRange.Text = strTexte
i = 1
' boucle pour gérer le défilement jusqu'à ce que l'on change la valeur
Do While i < 2
shpTexte.TextFrame.TextRange.Text = Mid(shpTexte.TextFrame.TextRange.Text, 2) & Left(shpTexte.TextFrame.TextRange.Text, 1)
DoEvents
Sleep 200
Loop
End Sub
Public Sub Passage()
' initialisation de la variable public pour permettre l'arrêt de la boucle
i = 2
DoEvents
' fin du diaporama
Application.Quit
End Sub |
Partager