Texte défilant VBA Excel
Résolu/Fermé
Manshiz
Messages postés
184
Date d'inscription
samedi 21 janvier 2006
Statut
Membre
Dernière intervention
18 août 2012
-
9 mars 2010 à 11:14
Manshiz Messages postés 184 Date d'inscription samedi 21 janvier 2006 Statut Membre Dernière intervention 18 août 2012 - 9 mars 2010 à 23:55
Manshiz Messages postés 184 Date d'inscription samedi 21 janvier 2006 Statut Membre Dernière intervention 18 août 2012 - 9 mars 2010 à 23:55
A voir également:
- Texte défilant VBA Excel
- Excel cellule couleur si condition texte - Guide
- Liste déroulante excel - Guide
- Si et excel - Guide
- Word et excel gratuit - Guide
- Transcription audio en texte word gratuit - Guide
2 réponses
Gord21
Messages postés
918
Date d'inscription
samedi 21 novembre 2009
Statut
Membre
Dernière intervention
20 mars 2013
289
9 mars 2010 à 21:46
9 mars 2010 à 21:46
Bonsoir,
Je pense qu'il faut ajouter des espaces (remplacer Space(1) par Space(10)).
Mais je ne pense pas qu'on ait la même version d'excel : comment fais-tu défiler le texte ?
@+
Je pense qu'il faut ajouter des espaces (remplacer Space(1) par Space(10)).
Mais je ne pense pas qu'on ait la même version d'excel : comment fais-tu défiler le texte ?
@+
Manshiz
Messages postés
184
Date d'inscription
samedi 21 janvier 2006
Statut
Membre
Dernière intervention
18 août 2012
10
9 mars 2010 à 23:55
9 mars 2010 à 23:55
Bonsoir Gord,
je travail avec Office 2007 et voici tout le code que l'on met directement dans le UserForm.
Private Declare Function GetTickCount Lib "Kernel32" () As Long
Public Arreter As Boolean
Dim Texte As String
Public Sub Chrono()
Dim Top As Long
Do
If Arreter = True Then Exit Do
Top = GetTickCount()
Do While GetTickCount() < Top + 90
DoEvents
Loop
DoEvents
Message
DoEvents
Loop
End Sub
Sub Message()
Dim Chaine1 As String
Dim Chaine2 As String
'Faire défiler un Label dans un Frame
'With LblMessage
'.Left = .Left - 10
'If .Left + .Width < 0 Then
'.Left = Frame1.Width
'End If
'End With
'Faire défiler un texte dans un Label
With Label1
Chaine2 = Left(.Caption, Len(Texte) - Len(.Caption) + 1)
Chaine1 = Right(.Caption, Len(.Caption) - 1) & Chaine2
.Caption = Chaine1
End With
End Sub
Private Sub UserForm_Activate()
Chrono
End Sub
Private Sub UserForm_Click()
Arreter = Not Arreter
End Sub
Private Sub UserForm_Initialize()
Texte = "Chargement" & _
" en" & _
" cours," & _
" veuillez" & _
" patienter" & _
"..." & _
"" & Space(1)
With Label1
.Caption = Texte
End With
End Sub
Comme je l'ai dit avant, j'ai déjà essaié, mais sans résultat.
J'ai coupé le texte pour que le défilement sois plus fuide;
en mettant toute la phrase entre guillemets, les mots s'affichent un par un, c'est pas beau.
A +
je travail avec Office 2007 et voici tout le code que l'on met directement dans le UserForm.
Private Declare Function GetTickCount Lib "Kernel32" () As Long
Public Arreter As Boolean
Dim Texte As String
Public Sub Chrono()
Dim Top As Long
Do
If Arreter = True Then Exit Do
Top = GetTickCount()
Do While GetTickCount() < Top + 90
DoEvents
Loop
DoEvents
Message
DoEvents
Loop
End Sub
Sub Message()
Dim Chaine1 As String
Dim Chaine2 As String
'Faire défiler un Label dans un Frame
'With LblMessage
'.Left = .Left - 10
'If .Left + .Width < 0 Then
'.Left = Frame1.Width
'End If
'End With
'Faire défiler un texte dans un Label
With Label1
Chaine2 = Left(.Caption, Len(Texte) - Len(.Caption) + 1)
Chaine1 = Right(.Caption, Len(.Caption) - 1) & Chaine2
.Caption = Chaine1
End With
End Sub
Private Sub UserForm_Activate()
Chrono
End Sub
Private Sub UserForm_Click()
Arreter = Not Arreter
End Sub
Private Sub UserForm_Initialize()
Texte = "Chargement" & _
" en" & _
" cours," & _
" veuillez" & _
" patienter" & _
"..." & _
"" & Space(1)
With Label1
.Caption = Texte
End With
End Sub
Comme je l'ai dit avant, j'ai déjà essaié, mais sans résultat.
J'ai coupé le texte pour que le défilement sois plus fuide;
en mettant toute la phrase entre guillemets, les mots s'affichent un par un, c'est pas beau.
A +