Texte défilant VBA Excel

Résolu
Bonjour,

J'ai un petit souci concernant ce code:

Private Sub UserForm_Initialize()
Texte = "Chargement" & _
" en" & _
" cours," & _
" veuillez" & _
" patienter" & _
"..." & _
"" & Space(1)
With Label1
.Caption = Texte
End With
End Sub

Le texte "Chargement en cours, veuillez patienter..." vient quasiment collé quand il défile,
j'aimerais qu'entre deux il y aie un laps de temps vide.
J'ai fais plusieurs tests sans succès. Un petit coup de main serait le bienvenu.

--
Sage est celui qui veut apprendre.
Configuration: Windows 7 Intégral
Acer
1000Go / 4Go Ram
Avira Antivirus Professionnel
Firefox 3.6 - Google Chrome

2 réponses

  1. 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 ?
    @+
    1
    1. 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 +
      0