Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

vba - texte qui défile

12 réponses
Avatar
j-pascal
Bonsoir, et bonne Année à toutes et à tous ;-)

Dans le code qui suit (désolé pour l'auteur, je ne me rappelle plus où je
l'ai trouvé !),
j'obtiens le message : "Propriété ou méthode non géré par cet objet"
(ligne en cause "ActiveSheet.Shapes("monshape").TextFrame.Characters.Text =
Left(t, 50)".

'-----------------------------
Sub defile()
t = "Le message qui défile pendant un temps donné ..."
n = 0
Do While n < 200
t = Right(t, Len(t) - 1) & Left(t, 1)
ActiveSheet.Shapes("monshape").TextFrame.Characters.Text = Left(t, 50)

w = 0.1
temp = Timer
Do While Timer < temp + w
DoEvents
Loop
n = n + 1
Loop
End Sub
'-----------------------------

Je ne sais pas comment identifier plus précisément le problème !
Merci pour vos lumières,

JP

10 réponses

1 2
Avatar
J
Bonjour
Cela marche bien ici sous XL2000
J'ai inséré une forme, Ellipse 1, puis renommé cette forme en la
sélectionnant puis en allant dans la zone nom (juste à gauche de barre
de formule) et en tapant monshape à la place de Ellipse 1 puis cliquant
enter.

Bon courage et bonne année
J@@


Bonsoir, et bonne Année à toutes et à tous ;-)

Dans le code qui suit (désolé pour l'auteur, je ne me rappelle plus où
je l'ai trouvé !),
j'obtiens le message : "Propriété ou méthode non géré par cet objet"
(ligne en cause
"ActiveSheet.Shapes("monshape").TextFrame.Characters.Text = Left(t, 50)".

'-----------------------------
Sub defile()
t = "Le message qui défile pendant un temps donné ..."
n = 0
Do While n < 200
t = Right(t, Len(t) - 1) & Left(t, 1)
ActiveSheet.Shapes("monshape").TextFrame.Characters.Text = Left(t, 50)

w = 0.1
temp = Timer
Do While Timer < temp + w
DoEvents
Loop
n = n + 1
Loop
End Sub
'-----------------------------

Je ne sais pas comment identifier plus précisément le problème !
Merci pour vos lumières,

JP


Avatar
LSteph
Bonjour,
Bonne Année à toi également

chez moi ceci fonctionne

Sub defile()
Dim t As String, n As Long, w As Single, temp As Date
If ActiveSheet.Shapes.Count = 0 Then
Feuil1.Shapes.AddShape msoShapeOval, 80, 66#, 360#, 122
End If

t = "Le message qui défile pendant un temps donné ..."
n = 0
Do While n < 200
t = Right(t, Len(t) - 1) & Left(t, 1)
ActiveSheet.Shapes(1).TextFrame.Characters.Text = Left(t, 50)

w = 0.01
temp = Timer
Do While Timer < temp + w
DoEvents
Loop
n = n + 1
Loop
End Sub

'lSteph

Bonsoir, et bonne Année à toutes et à tous ;-)

Dans le code qui suit (désolé pour l'auteur, je ne me rappelle plus où
je l'ai trouvé !),
j'obtiens le message : "Propriété ou méthode non géré par cet objet"
(ligne en cause
"ActiveSheet.Shapes("monshape").TextFrame.Characters.Text = Left(t, 50)".

'-----------------------------
Sub defile()
t = "Le message qui défile pendant un temps donné ..."
n = 0
Do While n < 200
t = Right(t, Len(t) - 1) & Left(t, 1)
ActiveSheet.Shapes("monshape").TextFrame.Characters.Text = Left(t, 50)

w = 0.1
temp = Timer
Do While Timer < temp + w
DoEvents
Loop
n = n + 1
Loop
End Sub
'-----------------------------

Je ne sais pas comment identifier plus précisément le problème !
Merci pour vos lumières,

JP


Avatar
cb60
Bonjour
Voici le fichier avec le code que tu a proposé, des que tu active la feuille
le texte défile

http://cjoint.com/?bdh1cyo4y3




Bonsoir, et bonne Année à toutes et à tous ;-)

Dans le code qui suit (désolé pour l'auteur, je ne me rappelle plus où je
l'ai trouvé !),
j'obtiens le message : "Propriété ou méthode non géré par cet objet"
(ligne en cause "ActiveSheet.Shapes("monshape").TextFrame.Characters.Text =
Left(t, 50)".

'-----------------------------
Sub defile()
t = "Le message qui défile pendant un temps donné ..."
n = 0
Do While n < 200
t = Right(t, Len(t) - 1) & Left(t, 1)
ActiveSheet.Shapes("monshape").TextFrame.Characters.Text = Left(t, 50)

w = 0.1
temp = Timer
Do While Timer < temp + w
DoEvents
Loop
n = n + 1
Loop
End Sub
'-----------------------------

Je ne sais pas comment identifier plus précisément le problème !
Merci pour vos lumières,

JP




Avatar
poc
Bonjour cb60
Je suis trés intéressé par ce code.
Sais-tu comment pourrait-on ajouter une petite musique pendant que le texte
défile.
Cordialement
Poc
"cb60" a écrit dans le message de news:

Bonjour
Voici le fichier avec le code que tu a proposé, des que tu active la
feuille
le texte défile

http://cjoint.com/?bdh1cyo4y3




Bonsoir, et bonne Année à toutes et à tous ;-)

Dans le code qui suit (désolé pour l'auteur, je ne me rappelle plus où je
l'ai trouvé !),
j'obtiens le message : "Propriété ou méthode non géré par cet objet"
(ligne en cause "ActiveSheet.Shapes("monshape").TextFrame.Characters.Text
Left(t, 50)".



'-----------------------------
Sub defile()
t = "Le message qui défile pendant un temps donné ..."
n = 0
Do While n < 200
t = Right(t, Len(t) - 1) & Left(t, 1)
ActiveSheet.Shapes("monshape").TextFrame.Characters.Text = Left(t,
50)

w = 0.1
temp = Timer
Do While Timer < temp + w
DoEvents
Loop
n = n + 1
Loop
End Sub
'-----------------------------

Je ne sais pas comment identifier plus précisément le problème !
Merci pour vos lumières,

JP








Avatar
cb60
Bonjour Poc
Le code n'est pas de moi, seumlement une adaptation de ce qui était proposé
sur les autres post, mais je pense que oui nous pouvons mettre une musique et
si j'ai le temps ce soir j'essayerais de voir comment, si personne d'autres
n'a répondu à ton interogation


Bonjour cb60
Je suis trés intéressé par ce code.
Sais-tu comment pourrait-on ajouter une petite musique pendant que le texte
défile.
Cordialement
Poc
"cb60" a écrit dans le message de news:

Bonjour
Voici le fichier avec le code que tu a proposé, des que tu active la
feuille
le texte défile

http://cjoint.com/?bdh1cyo4y3




Bonsoir, et bonne Année à toutes et à tous ;-)

Dans le code qui suit (désolé pour l'auteur, je ne me rappelle plus où je
l'ai trouvé !),
j'obtiens le message : "Propriété ou méthode non géré par cet objet"
(ligne en cause "ActiveSheet.Shapes("monshape").TextFrame.Characters.Text
Left(t, 50)".




'-----------------------------
Sub defile()
t = "Le message qui défile pendant un temps donné ..."
n = 0
Do While n < 200
t = Right(t, Len(t) - 1) & Left(t, 1)
ActiveSheet.Shapes("monshape").TextFrame.Characters.Text = Left(t,
50)

w = 0.1
temp = Timer
Do While Timer < temp + w
DoEvents
Loop
n = n + 1
Loop
End Sub
'-----------------------------

Je ne sais pas comment identifier plus précisément le problème !
Merci pour vos lumières,

JP














Avatar
cb60
re
Voici le fichier avec un son,
coller le fichier "wav" dans Windows, media
http://cjoint.com/?bdsrEf1Dai


Bonsoir, et bonne Année à toutes et à tous ;-)

Dans le code qui suit (désolé pour l'auteur, je ne me rappelle plus où je
l'ai trouvé !),
j'obtiens le message : "Propriété ou méthode non géré par cet objet"
(ligne en cause "ActiveSheet.Shapes("monshape").TextFrame.Characters.Text =
Left(t, 50)".

'-----------------------------
Sub defile()
t = "Le message qui défile pendant un temps donné ..."
n = 0
Do While n < 200
t = Right(t, Len(t) - 1) & Left(t, 1)
ActiveSheet.Shapes("monshape").TextFrame.Characters.Text = Left(t, 50)

w = 0.1
temp = Timer
Do While Timer < temp + w
DoEvents
Loop
n = n + 1
Loop
End Sub
'-----------------------------

Je ne sais pas comment identifier plus précisément le problème !
Merci pour vos lumières,

JP




Avatar
poc
Bonsoir et merci
En fait ce que je voulais c'est mettre un son wav qui dure toute la durée du
défilement mais qui ne soit pas répétitif.
Cordialement
Poc
"cb60" a écrit dans le message de news:

re
Voici le fichier avec un son,
coller le fichier "wav" dans Windows, media
http://cjoint.com/?bdsrEf1Dai


Bonsoir, et bonne Année à toutes et à tous ;-)

Dans le code qui suit (désolé pour l'auteur, je ne me rappelle plus où je
l'ai trouvé !),
j'obtiens le message : "Propriété ou méthode non géré par cet objet"
(ligne en cause "ActiveSheet.Shapes("monshape").TextFrame.Characters.Text
Left(t, 50)".



'-----------------------------
Sub defile()
t = "Le message qui défile pendant un temps donné ..."
n = 0
Do While n < 200
t = Right(t, Len(t) - 1) & Left(t, 1)
ActiveSheet.Shapes("monshape").TextFrame.Characters.Text = Left(t,
50)

w = 0.1
temp = Timer
Do While Timer < temp + w
DoEvents
Loop
n = n + 1
Loop
End Sub
'-----------------------------

Je ne sais pas comment identifier plus précisément le problème !
Merci pour vos lumières,

JP








Avatar
j-pascal
Bonsoir,

Le nom de Shape avait l'air conforme, néanmoins j'ai suivi ton conseil en
en créant un nouveau et ça marche effectivement ! Par contre, il y a un
petit bog si on change de feuille pendant le défilement... Il faut que je
regarde ça de plus près ;-)

Cordialement,

JPM

Cela marche bien ici sous XL2000
J'ai inséré une forme, Ellipse 1, puis renommé cette forme en la
sélectionnant puis en allant dans la zone nom (juste à gauche de barre de
formule) et en tapant monshape à la place de Ellipse 1 puis cliquant
enter.

Bon courage et bonne année
J@@


Bonsoir, et bonne Année à toutes et à tous ;-)

Dans le code qui suit (désolé pour l'auteur, je ne me rappelle plus où je
l'ai trouvé !),
j'obtiens le message : "Propriété ou méthode non géré par cet objet"
(ligne en cause "ActiveSheet.Shapes("monshape").TextFrame.Characters.Text
= Left(t, 50)".

'-----------------------------
Sub defile()
t = "Le message qui défile pendant un temps donné ..."
n = 0
Do While n < 200
t = Right(t, Len(t) - 1) & Left(t, 1)
ActiveSheet.Shapes("monshape").TextFrame.Characters.Text = Left(t,
50)

w = 0.1
temp = Timer
Do While Timer < temp + w
DoEvents
Loop
n = n + 1
Loop
End Sub
'-----------------------------

Je ne sais pas comment identifier plus précisément le problème !
Merci pour vos lumières,

JP





Avatar
j-pascal
Bonsoir Stéphane,

Merci,
Lors de mon premier essai, le texte a défilé dans le Shape que j'avais créé
pour un autre exemple.
J'ai alors déplacé le bouton de lancement de ton code, dans une autre
feuille et le texte a défilé dans le bouton lui-même !! Est-ce normal ?

@+ ?

JP

Sub defile()
Dim t As String, n As Long, w As Single, temp As Date
If ActiveSheet.Shapes.Count = 0 Then
Feuil1.Shapes.AddShape msoShapeOval, 80, 66#, 360#, 122
End If

t = "Le message qui défile pendant un temps donné ..."
n = 0
Do While n < 200
t = Right(t, Len(t) - 1) & Left(t, 1)
ActiveSheet.Shapes(1).TextFrame.Characters.Text = Left(t, 50)

w = 0.01
temp = Timer
Do While Timer < temp + w
DoEvents
Loop
n = n + 1
Loop
End Sub

'lSteph

Bonsoir, et bonne Année à toutes et à tous ;-)

Dans le code qui suit (désolé pour l'auteur, je ne me rappelle plus où je
l'ai trouvé !),
j'obtiens le message : "Propriété ou méthode non géré par cet objet"
(ligne en cause "ActiveSheet.Shapes("monshape").TextFrame.Characters.Text
= Left(t, 50)".

'-----------------------------
Sub defile()
t = "Le message qui défile pendant un temps donné ..."
n = 0
Do While n < 200
t = Right(t, Len(t) - 1) & Left(t, 1)
ActiveSheet.Shapes("monshape").TextFrame.Characters.Text = Left(t,
50)

w = 0.1
temp = Timer
Do While Timer < temp + w
DoEvents
Loop
n = n + 1
Loop
End Sub
'-----------------------------

Je ne sais pas comment identifier plus précisément le problème !
Merci pour vos lumières,

JP




Avatar
j-pascal
Bonsoir,

Merci,
J'ai un bug "erreur system..." si je change de feuille pendant le défilement
...
@+ ?

JP

"cb60" a écrit dans le message de news:

Bonjour
Voici le fichier avec le code que tu a proposé, des que tu active la
feuille
le texte défile

http://cjoint.com/?bdh1cyo4y3




Bonsoir, et bonne Année à toutes et à tous ;-)

Dans le code qui suit (désolé pour l'auteur, je ne me rappelle plus où je
l'ai trouvé !),
j'obtiens le message : "Propriété ou méthode non géré par cet objet"
(ligne en cause "ActiveSheet.Shapes("monshape").TextFrame.Characters.Text
Left(t, 50)".



'-----------------------------
Sub defile()
t = "Le message qui défile pendant un temps donné ..."
n = 0
Do While n < 200
t = Right(t, Len(t) - 1) & Left(t, 1)
ActiveSheet.Shapes("monshape").TextFrame.Characters.Text = Left(t,
50)

w = 0.1
temp = Timer
Do While Timer < temp + w
DoEvents
Loop
n = n + 1
Loop
End Sub
'-----------------------------

Je ne sais pas comment identifier plus précisément le problème !
Merci pour vos lumières,

JP








1 2