Texto deslizante de VBA en Excel

Resuelto
Hola,

Tengo un pequeño problema con este código:

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

El texto "Chargement en cours, veuillez patienter..." se ve casi pegado cuando desplaza, me gustaría que entre dos palabras haya un intervalo de tiempo vacío. He probado varias cosas sin éxito. ¿Podrías echarme una mano?

-- Sage es aquel que quiere aprender.

Configuración: Windows 7 Integral Acer 1000Go / 4Go Ram Avira Antivirus Profesional Firefox 3.6 - Google Chrome

2 respuestas

  1. Buenas noches,
    Creo que hay que añadir espacios (reemplazar Space(1) por Space(10)).
    Pero no creo que tengamos la misma versión de Excel: ¿cómo haces desplazar el texto?
    @+
    --
    Experiencia: nombre con el que los hombres bautizan sus errores.
    Oscar Wilde
    1
    1. Buenas noches Gord,

      trabajo con Office 2007 y aquí está todo el código que colocamos directamente en el 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à essayé, mais sans résultat.
      J'ai coupé le texte pour que le défilement soit plus fluide;
      en mettant toute la phrase entre guillemets, les mots s'affichent un par un, ce n'est pas joli.

      A +

      --
      Sage es aquel que quiere aprender.
      0